Linux常用命令详解1

一、基本原则

1.Linux基本原则

(1)由目的单一的小程序组成,合并小程序完成复杂的任务。

(2)一切皆为文件。

(3)尽量避免捕获用户接口(尽量不和用户进行交互,就是一个程序一旦开始运行,就不需要用户进行任何操作)(4)配置文件保存为纯文本格式。

2.用户接口
一种独立的应用程序,能够为用户提供启动其他应用程序的机制。

CLI(命令行界面):命令提示符,用户输入命令即可。
如shell:sh,csh,ksh,bash,zsh,tcsh

GUI(图形用户界面):图形化界面用户接口,一般通过点击来启动应用程序。

GNOME(桌面环境):C语言。

KDE(桌面环境):C++。

XFCE(桌面环境):轻量级。

3.终端类型
tty命令可以查看。

[root@localhost ~]# tty
/dev/pts/0

4.终端类型介绍

虚拟终端(tty1-6)
/dev/tty# #号为数字

伪终端(ssh、Telnet连接称为伪终端或者在图形界面下打开的终端)
/dev/pts/#

物理终端(console)
/dev/console

串行终端(使用特定速率向外打印字符,通过串行接口连接)
/dev/ttyS#

图形终端:可以使用startx命令启动
startx- -:2可以启动第二个图形终端

二、命令形式

1.命令格式

参数+选项+参数

2.选项

短选项:-输入快捷

多个选项可以组合:-a -b = -ab

长选项:-意思明了

3.参数:命令的作用对象。
命令分为外部命令和内部命令

内部命令:系统shell自带的命令。

外部命令:安装其他的程序产生的命令。

可以通过type查看命令是内部还是外部

type+命令关键词

如果遇到不懂的命令可以通过以下途径进行求助。

(1)内部命令可以通过:help 命令 例如:help cd

(2)外部命令可以通过:命令+--help 例如:ls --help

(3)可以通过man命令:例如:man cd

(4)可以通过info命令:例如:info cd

(5)通过百度等搜索引擎

(6)可以下载一个Linux的中文命令大全

三、命令举例

1.ls命令
常用选项

参数作用
-h单位转换
-a显示以.开头的隐藏文件
-A表示列出除.和. .以外的所有文件
-d显示目录自身属性
-iindexnode(索引节点)
-r逆序显示
-R递归显示
-l长格式查看

2.文件类型

[root@localhost ~]# ls -l test.txt
-rw-r--r--. 1 root root 187 5月    24 10:45 test.txt

结果开头的符号意义

符号意义
-普通文件
d目录文件
b块设备文件(block)就是存储数据以供系统存取的接口设备,简单说就是硬盘。
c字符设备文件(character)即串行端口的接口设备,例如键盘、鼠标等。
l符号链接文件(symbolic link file)。
p命令管道文件(pipe)是一种特殊的文件类型,主要是解决多个程序同时存取一个文件所造成的错误。
s套接字文件(socket)通常用在网络数据连接。

注意:可以启动一个程序来监听客户端的要求,客户端也可以通过套接字来进行数据通信。这类文件通常在/var/run目录中。

文件权限:9位,每3位一组,每一组:rwx(读、写、执行)

文件的硬链接次数

文件的属主

文件的属组

文件大小

时间戳:最近一次被修改的时间,可以使用stat命令查看。

访问:access atime是在读取文件或执行文件时更改的。

修改:modify mtime是在写入文件时随文件内容的更改而更改的。

改变:change ctime是在写入文件、更改所有者、权限或链接设置时,随inode的内容更改而更改的。
四、文件系统

1.各个目录介绍

FHS:filesystem hierarchy standard 文件系统层级标准

rootfs():根文件系统 /

/boot:系统启动相关的静态文件,如内核、initrd或者initramfs,以及grub(bootloader)。

/dev:所有设备的设备文件,设备文件也称为特殊文件(仅有元数据,没有数据,是设备的入口)。
设备文件:
块设备:随机访问,数据块。
字符设备:线性访问,按字符为单位。
设备号:主设备号(major)和次设备号(minor)主设备号相同的设备是同类设备(使用同一个驱动程序)。

/etc:配置文件

/home:普通用户的家目录,每一个用户的家目录通常默认为/home/username。

/root:管理员的家目录。

/lib:基本的共享库和内核模块。
库文件本质上是一种可执行代码的二进制形式,可以被操作系统载入内存执行。
静态库:静态库的代码在编译过程中已经被载入可执行程序,因此体积较大。
动态库:共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,因此代码体积较小。
/lib/modules:内核模块文件。

/media:移动设备的挂载点目录,例如光盘、U盘。

/mnt:挂载点目录,额外的临时文件系统。

/opt:可选目录,第三方程序的安装目录。

/proc:内核及进程信息的虚拟文件系统,伪文件系统,内核映射文件,只存在内存中,它以文件系统的方式为访问系统内核数据的操作提供接口。

/sys:伪文件系统,硬件设备信息虚拟文件系统接口,跟硬件设备相关的属性映射文件,该目录下是全局设备结构体系,包含所有被发现的注册在各种总线上的各种物理设备。

/tmp:临时文件, /var/tmp。

/var:可变化的文件(内容发生变化)。
/var/log:日志信息。

/bin:基础的用户命令二进制程序, 为所有用户使用。

/sbin:系统二进制程序,一般为管理命令。

/bin和/sbin:系统自身启动和运行时可能会用到的核心二进制命令。

/usr:shared, read-only(Unix System Resource,即Unix系统资源的缩写),不适合放在/bin或/etc目录下的额外的工具。

/usr/bin:大多数用户使用到的命令。

/usr/sbin:非核心的系统命令。

/usr/bin和/usr/sbin:系统运行时,用户为完成某种操作可能用到的命令。

/usr/lib

/usr/local:主要存放那些手动安装的软件。

/usr/local/bin

/usr/local/sbin

/usr/local/lib

/usr/share/man /usr/share/doc:帮助文件。

通过cat /proc/devices命令查看当前已经加载的设备驱动程序的主设备号。

[root@nginx134 ~]# ls -l /dev/sr0
brw-rw---- 1 root cdrom 11, 0 6月  25 18:16 /dev/sr0
11为主设备号;0为此设备号。

2.应用程序的组成部分
二进制文件、库文件、配置文件、帮助文件
绝对路径:凡是以“/”开头的输入路径的方式都是绝对路径。
相对路径:凡是以“.”或者“. .”开头的都是相对路径。
每个绝对路径都可以切割成2部分:
基名:basename /path/to/somewhere结果为somewhere
目录名:dirname /path/to/somewhere结果为/path/to
3.查看服务器基本信息

命令作用
cat /proc/cpuinfo查看CPU信息。
cat /proc/meminfo查看内存信息。
free查看内存使用情况。
uptime监控CPU情况。
cat /etc/redhat-release查看发行版信息。
hostname查看主机名。
ip addr=ip a查看IP信息。
ifconfig查看IP信息。
netstat查看网络连接信息、路由表等,常用来查看端口打开情况。
fdisk -l查看硬盘信息。
df查看设备挂载信息。
五、其他常用命令

1.目录基本操作命令

tree:树状图列出目录的内容。
   -C:给文件和目录清单加上颜色,便于区分各种类型

ls:查看目录内容

cd:切换目录

pwd:查看当前目录位置

mkdir:创建目录 
   -p:创建多级目录

rmdir:删除空目录

rm:可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及某下属的所有文件及其子目录均删除掉。
对于链接文件,只是删除整个链接文件,而原有文件保持不变。
   -f:强制删除 
   -r或-R:递归处理,将指定目录下的所有文件与子目录一并处理。

mv:用来对文件或目录重新命名,或者将文件从一个目录移动到另一个目录中。

cp:用来将一个或多个源文件或者目录复制到指定的目的目录。
   -a:此参数的效果和同时指定”-dpR“参数一样;
   -d:复制符号链接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;
   -f:强行复制文件或目录,不论目标文件或目录是否已存在;
   -i:覆盖既有文件之前先询问用户;
   -p:保留源文件或目录的属性;
   -R/r:递归处理,将指定目录下的所有文件与子目录一并处理。

2.文件查看和处理命令

touch:创建文件,改变文件的atime和mtime(ctime会随之改变) 
   -a:改变atime 
   -m:改变mtime

cat:用来显示文件的内容 
   -n:显示行号

cat m1 m2 > file:(将文件m1和m2合并后放入文件file中)

tac:倒序查看文件内容

more:显示文件内容,每次显示一屏
   按Space键:显示文本的下一屏内容。
   按Enter键:只显示文本的下一行内容。
   按h键:显示帮助屏,该屏上有相关的帮助信息。
   按b键:显示上一屏内容。
   按q键:退出命令。

less:分屏上下翻页浏览文件内容,
   用PageUp键向上翻页
   用PageDown键向下翻页

head:显示文件开头

tail:显示文件结尾 
   -f:监控某个文件变化

wc:统计文件的行数\单词数\字符数 
   -l:行数 
   -w:单词数 
   -c:字符数

du:统计文件和目录的大小 
   -s:汇总显示大小 
   -h:易读形式显示

3.vim
三种模式:命令模式、插入模式、末行模式
插入模式

a:从当前光标的下一个字符开始插入。

A:从当前行的末尾开始插入。

i:从当前光标开始插入。

I:从当前行的开头开始插入。

o:从当前光标的下一行开头开始插入。

O:从当前光标的上一行开头开始插入。

末行模式

:noh 取消高亮显示

:w 保存 

:q 退出 

:wq 保存并且退出 

:!(w,q,wq) 强制三者可以结合使用

命令行模式

dd:删除[剪切] 
[n]dd:多行删除

yy:复制 
[n]yy:多行复制 

p:粘贴

4.vim显示行号

末行输入:set nu

5.windows和linux文件格式转换

set ff?:显示当前文件格式

set ff=unix:设置成unix格式

set ff=dos:设置成dos格式

6.vim命令模式下的操作
(1)翻页Page Down或Ctrl+F向下翻动一整页内容;Page Up或Ctrl+B向上翻动一整页内容

(2)行内快速跳转Home键或“^”、数字“0”跳转至行首 End键或跳转到行尾$

(3)行间快速跳转1G或者gg跳转到文件的首行
G跳转到文件的末尾行
#G跳转到文件中的第#行

(4)行号显示
set nu在编辑器中显示行号
set nonu取消编辑器中的行号显示

(5)删除x或Del删除光标处的单个字符
dd删除当前光标所在行
#dd删除从光标处开始的#行内容
d^删除当前光标之前到行首的所有字符
d$删除当前光标处到行尾的所有字符

(6)复制
yy复制当前行整行的内容到剪贴板
#yy复制从光标处开始的#行内容

(7)粘贴
p小写将缓冲区中的内容粘贴到光标位置处之后
P大写粘贴到光标位置处之前

(8)查找
/word从上而下在文件中查找字符串“word”
?word从下而上在文件中查找字符串“word”
n定位下一个匹配的被查找字符串
N定位上一个匹配的被查找字符串

(9)取消操作
u按一次取消最近的一次操作,多次重复按u键,恢复已进行的多步操作
U用于取消对当前行所做的所有编辑

(10)保存退出
ZZ保存当前的文件内容并退出vi编辑器

(11)可视化块操作界面
ctrl+v进入块操作界面
上、下、左、右箭头 可以进行选择块
y复制选择的块
p粘贴选择的块

7.末行模式的操作
(1)保存文件
w保存修改的内容
w /root/newfile另存为其它文件

(2)退出vi
q未修改退出
q!放弃对文件内容的修改,并退出vi

(3)保存文件退出vi
wq保存修改的内容并退出

(4)打开新文件
e ~/install.log打开新的文件进行编辑。

(5)读入其它文件内容
r /etc/filesystems在当前文件中读入其他文件内容。

(6)替换

s /old/new:将当前行中查找到的第一个字符“old”串替换为“new”。

s /old/new/g:将当前行中查找到的所有字符串“old” 替换为“new”。

#,# s/old/new/g:在行号“#,#”范围内替换所有的字符串“old”为 “new”。

% s/old/new/g:在整个文件范围内替换所有的字符串“old”为 “new”。

s /old/new/c:在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认。

8.linux交互界面快捷键

命令作用
ctrl+左右键在单词之间跳转
ctrl+a跳到本行的行首
ctrl+e跳到页尾
ctrl+u删除当前光标前面的文字(还有剪切功能)
ctrl+k删除当前光标后面的文字(还有剪切功能)
ctrl+l进行清屏操作
ctrl+y粘贴ctrl+u或ctrl+k剪切的内容
ctrl+w删除光标前面的单词的字符
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值