常用linux命令

一、linux系统的文件目录结构

linux系统下,我们看到的是文件夹,没有盘符的概念,只有一个根目录/,所有文件都在它下面

三、linux命令格式

command [-options] [parameter]

说明:

command:命令名,相应功能的英文单词或单词的缩写

[-options]:选项,可用来对命令进行控制,也可以省略

[paremeter]:传给命令的参数,可以是零个、一个或多个

二、linux常用命令

1、man

man command

查阅command命令的使用手册,包含了绝大部分的命令、函数的详细使用说明

使用时,可用空格键显示手册页的下一屏、Enter键一次滚动手册页的一行、b回滚一屏、f前滚一屏、q退出

另外:command --help可以显示command命令的帮助信息

2、ls

ls [-options] [file]

列出目录内容

ls常用选项:

-a  显示指定目录下所有子目录与文件,包括隐藏文件(隐藏文件即.开头文件,需要用-a参数才能显示)

-l  以列表方式显示文件的详细信息

-h  配合-l以人性化的方式显示文件大小,文件大小单位有B、K、M、G、T、P

ls  #列出当前文件夹下的所有文档

ls -l  #等同于ll,按列表列出当前文件夹的所有文档的详细信息

ls -al  #列出当前文件夹的所有文档的详细信息,包括隐藏文档和父目录

ls -lt:列出当前文件夹下所有文档的详细资料,按修改时间倒序排列

ls /home/qq:列出某个目录下的所有文档

ls -l 可以查看文件夹下的文件的详细信息,从左到右依次是:

权限,第1个字符如果是d表示目录,如果是-表示文件

硬链接数,通俗的讲,就是有多少种方式,访问到当前目录/文件

拥有者

大小

时间

名称

通配符的使用

通配符,匹配一个或一个以上任意字符

*  代表任意个数的字符

?代表任意一个字符,至少1个

[]  表示可以匹配字符组中的任意一个

[abc] 匹配a、b、c中的任意一个

[a-f]  匹配从a到f范围内的任意一个字符

3、cd

cd [dir]

切换目录,为英文单词change directary的简写

cd  切换到当前用户的主目录(/home/用户目录)

cd~  切换到当前用户的主目录(/home/用户目录)

cd.  保持在当前位置不变

cd..  切换到上级目录

cd-  在最近两次工作目录之间来回切换

cd /  进入根目录

相对路径和绝对路径:

相对路径  在输入路径时,最前面不是 /或者-,表示相对 当前目录 所在的目录位置

绝对路径  在输入路径时,最前面是 /或者-,表示从 根目录/家目录 开始的具体目录位置

4、pwd

显示当前或者工作路径

5. touch

创建文件或修改文件时间,如果文件不存在,可以创建一个空白文件;如果文件已存在,可以修改文件的末次修改日期

6.mkdir

mkdir [-p] dir

创建一个新的目录

-p  递归创建目录

新建目录名称 不能与当前目录中 已有的目录或文件 同名

7、rm

删除文件或目录

-f  强制删除,忽略不存在的文件,不提示

-r  递归地删除目录下的内容,删除文件夹时必须添加此参数

rm -r file #不提示删除某个文件

rm -rf dir #不提示删除某个文件夹

8、tree

以树状图列出文件目录结构

-d  只显示目录

9、cp

可将 文件或目录 复制到另一个 文件或目录中

-f  已经存在目标文件直接覆盖,不提示

-i  覆盖文件前提示

-r 递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名

cp file1 file2 #文件到文件

cp file1 ../test1 #文件到目录

cp -r test1 test2 #目录到目录,递归拷贝

10、mv

移动文件或目录,也可以给文件或目录重命名

-i  覆盖文件前提示

11、 cat

cat用来查看文件内容、创建文件、文件合并、追加文件内容等功能

cat会一次显示所有的内容,适合查看内容较少的文本文件

-b:对非空行输出编号

-n:对所有输出行编号

12、tac

倒序显示文件,相当于cat反过来

13、more

分屏显示文件内容,每次只显示一页内容

空格键  显示文件的下一屏

Enter  显示文件的下一行

b  回滚一屏

f  前滚一屏

/word  搜索word字符串

14、less

less命令与more命令类似,less可以按空格键向下显示文件,还可以利用上下键卷动文件

15、head

显示文件头部

head file #默认显示前10行

head -5 file #显示前5行

16、tail

显示文件尾部

tail file #默认显示最后10行

tail -5 file #显示后5行

tail -f file #实时显示文件尾部

17、sort

文本排序命令

sort -n file

sort -r file

sort -u file

18、grep

打印匹配的行,grep经常和管道配合使用

grep 正则表达式 file

grep 3 a.txt #显示a.txt中包含3的行

grep 3 a.txt|wc -l #a.txt文件中包含3的行有多少行

grep -n 3 a.txt #显示a.txt中包含3的行号和行

grep -v 3 a.txt #显示a.txt中不包含3的行

grep ^123 a.txt #显示a.txt中以123开头的行

grep 123$ a.txt #显示a.txt中以123结尾的行

grep -n aa *  #显示当前目录下所有包含aa的行号和行

19、find

在文件系统中查找文件

find /path/to -name "test*"

find /path/to -type f

find /path/to -ctime -1

find /path/to -cmin +1440

可以在查找后,使用-exec执行后续操作

find /path/to -ctime +30 -exec rm -rf {} \ #删除30天前的文件

 20、df

显示磁盘空间使用情况

df -h #到G自动显示,到M自动显示

df -m #显示M

df #相当于df -k

21、du

显示目录下的文件大小

du -sh #当前目录所占用的磁盘空间

du -sh * #当前目录下所有文件占用的空间

du -sh * |sort -nr #显示前10个比较大的文件

22、free

查看内存使用情况

free #K显示

free -m #M显示

free -g #G显示

23、ps

显示当前运行的进行

ps aux #显示进程的详细状况

a #显示终端上的所有进程,包括其他用户的进程

u #显示进程的详细状态

x #显示没有控制终端的进程

ps默认只会显示当前用户通过终端启动的应用程序

ps -ef

14、kill

kill pid #本身和子进程都杀掉

kill -9 pid #只杀进程本身

25、top

显示当前系统正在执行的进程的相关信息,包括进程id、CPU占用率、内存占用率

第一列,任务队列信息

    系统时间、系统已运行时间、3个用户登录系统、load avarge后面的3个数,分别为1分钟、3分钟、5分钟的负载情况

第二列,Tash -任务(进程)

    总进程、运行进程、休眠进程等进程数

第三列,cpu状态

    us #用户占用CPU率

    sy #系统占用CPU率

    id #空闲CPU率

    wa #CPU等待IO所用的时间,20%系统会很慢,30%可能没法操作了

第四行,内存状态

   total  #物理内存总量

   free  #空闲内存总量

   used #已使用内存

   buff/cache #缓存

第五行,交换分区状态

  交换分区的used如果在不断变化,说明内核在不断的进行内存和swap的交换,是真正的内存不够用了

第七行,各任务(进程)的状态监控

  PID  #进程id

  USER #所有者

  PR #进程优先级

  NI  #nice值,负值表示高优先级,正值表示低优先级

  VIRT #进程使用的虚拟内存总量,单位kb,VIRT=SWAP+RES

  RES  #进程使用的、未被换出的物理内存大小,单位kb,RES=CODE+DATA

  SHR  #共享内存大小,单位kb

  S #进程状态,D-不可中断的睡眠状态,R-运行,S-睡眠,T-跟踪/停止,Z-僵尸进程

  %CPU #上次更新到现在的CPU时间占用百分比

  %MEM #进程使用的物理内存百分比

  TIME+ #进程使用的CPU时间总计,单位1/100秒

  COMMAND #进程名称(命令名/命令行)

  F、f、P、p用来增加或者减少显示项,以及显示顺序

26、date

修改系统时间

27、reboot

重启

28、shutdown

关机

-r :重新启动

shutdown -r now #重新启动操作系统,now表示现在

shutdown now #立刻关机

shutdown 20:25 #系统在今天的20:25会关机

shutdown +10 #系统再过10分钟后关机

shutdown -c #取消之前指定的关机计划

shutdown -k now #通知所有终端,现在要关机,但是实际不关机

shutdown -h now #通知所有终端,现在要关机,实际上确实关机了

shutdown -k 5 #通知所有终端,5分钟后关机,但是实际不关机

shutdown -h 5 #通知所有终端,5分钟后关机,实际上确实要关机了

29、echo

echo会在终端中显示参数指定的文字

30、重定向>和>>

linux允许将命令执行结果 重定向 到一个文件

将本应该显示在终端的内容 输出/追加 到指定文件中

>表示输出,会覆盖文件原有的内容

>>表示追加,会将内容追加到已有文件的末尾

echo hello > b

31、管道|

linux允许将一个命令的输出 通过管道 做为 另一个命令的输入

常用的管道命令有:

more:分屏显示内容

grep:在命令执行结果的基础上查询指定的文本

例如:

  (1)查找tomcat进程号:ps -ef|grep tomcat

  (2)关闭tomcat进程:kill -9 进程号

32、which

查看执行命令所在的位置

which ls #输出 /bin/ls

which useradd #输出 /usr/sbin/useradd

bin和sbin

在linux中,绝大多数可执行文件都是保存在/bin、/sbin、/usr/bin、/usr/sbin

/bin是二进制执行文件目录,主要用于具体应用

/sbin是系统管理员专用的二进制代码存放目录,主要用于系统管理

/usr/bin是后期安装的一些软件

/usr/sbin超级用户的一些管理程序

cd命令是内置在系统内核中的,没有独立的文件,因此用which无法找到cd命令的位置

33、切换用户

su -用户名 #切换用户,并且切换目录

exit #退出当前登录用户

su 不接用户名,可以切换到root,但是不推荐使用,因为不安全

34、修改文件权限

chown 用户名 文件名|目录名 #修改文件|目录的拥有者

chgrp -R 组名 文件名|目录名 #递归修改文件|目录的组

chmod -R 755 文件名|目录名 #递归修改文件权限

 

chmod在设置权限时,可以用三个数字分别对应 拥有者 /组 和其他 用户的权限

chmod +/-rwx 文件名|目录名 #直接修改文件|目录 的读、写、执行权限

chmod 755 file

chmod -R 644 dir

第一列(数字7)代表所属用户权限,第二列(数字5)代表所属用户组权限,第三列(数字5)代表其他用户组权限

0-无权限(-),1-可执行(x),2可读(r),4-可写(w)

35、超级用户

Linux系统中的root账号通常用于系统的维护和管理,对操作系统的所有资源有访问权限

在大多数版本的Linux系统中,都不建议直接使用root账号登录系统

在Linux安装的过程中,系统会自动创建一个用户账号,而这个默认的用户就称为“标准用户”

sudo

su 表示以另一个用户的身份

sudo 命令用来以其他身份来执行命令,预设的身份是root

用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码

36、组管理 终端命令

创建组/删除组的终端命令都需要通过sudo执行

(1)groupadd 组名 #添加组

(2)groupdel 组名 #删除组

(3)cat /etc/group #确认组信息

(4)chgrp 组名 文件/目录名 #修改文件/目录所在组

组信息是保存在/etc/group文件中

/etc 目录是专门用来保存 系统配置信息 的目录

37、用户管理 终端命令

创建用户/删除用户/修改其他用户密码的终端命令都需要通过sudo执行

(1)useradd -m -g 组 新建用户名  #添加用户组,-m自动建立用户家目录 -g指定用户所在组,否则会建立一个和用户名同名的组

(2)passwd 用户名 #设置用户密码,如果是普通用户,直接用passwd可以修改自己的账户密码

(3)useradd -r 用户名 #删除用户 -r选项会自动删除用户家目录

(4)cat /etc/passwd |grep 用户名 #确认用户信息,新建用户后,用户信息会保存在/etc/passwd文件中

创建用户时,如果忘记添加-m选项指定新用户的家目录,最简单的方法是删除用户,重新创建

创建用户时,默认会创建一个和用户名同名的组名

用户信息保存在/etc/passwd文件中

posted @ 2021-01-07 20:00  来自蓝星  阅读(176)  评论(0编辑  收藏  举报