Linux 常用命令

简介:

Linux常用命令

1) 除了/之外,所有的字符都合法。

2) 有些字符最好不用,比如空格,制表符,退格符合字符@#¥()-等。

3) 避免使用,作为普通文件名的第一个字符。

4) 大小写敏感。

命令格式:命令 –选项 参数

例如:ls –la /etc

说明:1)当有多个选项时,可以写在一起。

2)两个特殊的目录,.和..分别代表当前目录和当前目录的父目录,在linux下面,cd ..是返回上一级目录

只有root可以执行的命令放在 /sbin /usr/sbin下面,bin表示binary,s表示super

所有user都可以执行的命令放在/bin /usr/bin 下面

文件处理命令:ls

命令名称:ls

命令英文原意:list

命令所在路径:/bin/ls

执行权限:所有用户

功能描述:显示目录文件

语法:ls 选项[-ald][文件或目录]

-a 显示所有文件 a-all 带a 参数可以看到隐藏文件

-l 详细信息显示 l-long

drwxr-xrr-x 2 root root 4096 12-01 20:52 bin

例如 drwxr-xrr-x d是指文件类型 d是directory,-是指二进制文件 l是软链接文件

rwxr-xrr-x分成3部分来看,rwx代表了3种权限,读写执行,前3个字母代表所有者user的权限,中级的3个字母代表所属组group,后3个字母代表其他others

2是硬链接数 4096是文件大小,注意不是指文件的真实大小,在linux里面,是以数据块block为单位,存储数据的最小单位就是数据块,一个默认数据块大小是512字节,12-01 20:52是指文件创建的时间或者最后修改的时间,bin是文件名称

-d 查看目录属性

文件处理命令:cd

命令名称:cd

命令英文原意:change directory

命令所在路径:shell内置命令

执行权限:所有用户

功能描述:切换目录

语法:cd [目录]

范例:$cd / 切换到根目录

$cd .. 回到上一级目录

文件处理命令:pwd

命令名称:pwd

命令英文原意:print working directory

命令所在路径:/bin/pwd

执行权限:所有用户

功能描述:显示当前所在的工作目录

语法:pwd

范例:$pwd /etc/rc5.d

文件处理命令:mkdir

命令名称:mkdir

命令英文原意:make directories

命令所在路径:/bin/mkdir

执行权限:所有用户

功能描述:创建新目录

语法:mkdir [目录名]

范例:$mkdir newdir

文件处理命令:touch

命令名称:touch

命令英文原意:

命令所在路径:/bin/ touch

执行权限:所有用户

功能描述:创建空文件

语法:touch [文件名]

范例:$touch newdir

文件处理命令:cp

命令名称:cp

命令英文原意:copy

命令所在路径:/bin/cp

执行权限:所有用户

功能描述:复制文件或目录

语法:cp –R [源文件或目录][目的目录]

-R 复制目录

范例:$cp file1 files2 dir1 将文件file1,fiel2复制到dir2目录下

$cp –R dir1 dir2 将dir下的所有文件及子目录复制到dir2

文件处理命令:mv

命令名称:mv

命令英文原意:move

命令所在路径:/bin/ mv

执行权限:所有用户

功能描述:移动文件,更名

语法:mv [源文件或目录][目的目录]

范例:$mv file1 files3 将当前目录下文件file1更名为file3

$ mv file2 dir2 将文件file2移动到目录dir2下

文件处理命令:rm

命令名称:rm

命令英文原意:remove

命令所在路径:/bin/ rm

执行权限:所有用户

功能描述:删除文件

语法:rm –r [文件或目录]

rm –r 删除目录

\rm [文件] 直接删除文件,不询问

rmdir也是删除目录,但是只能删除空目录

范例:$rm file3 删除文件file3

$rm –r dir1 删除目录dir1

$rm –rf dir1 删除目录dir1,不做是否确定删除的询问

文件处理命令:cat

命令名称:cat

命令英文原意:concatenate and display files

命令所在路径:/bin/ cat

执行权限:所有用户

功能描述:显示文件内容

语法:cat [文件名]

范例:$cat /etc/issue

$cat /etc/services

文件处理命令:more

命令名称:more

命令所在路径:/bin/ more

执行权限:所有用户

功能描述:分段显示文件内容

语法:more [文件名]

(空格)或f 显示下一页

(enter) 显示下一行

Q或q 退出

范例:$more /etc/services

文件处理命令:head

命令名称:head

命令所在路径:/bin/ head

执行权限:所有用户

功能描述:查看文件的前几行

语法:head -num [文件名]

-num 显示文件的前num行

范例:$head -20 /etc/services

文件处理命令:tail

命令名称:tail

命令所在路径:/bin/ tail

执行权限:所有用户

功能描述:查看文件的hou几行

语法:tail -num [文件名]

-num 显示文件的后num行

-f 动态显示文件内容(比如日志信息是动态更新,可以实时的看到最新的信息)

范例:$tail -20 /etc/services

文件处理命令:ln

命令名称:ln

命令英文原意:link

命令所在路径:/bin/ ln

执行权限:所有用户

功能描述:产生链接文件

语法:ln -s [源文件][目标文件]

-s 创建软链接

范例:$ln –s /etc/issue /issue.soft 创建文件/etc/issue的软链接文件为/issue.soft

$ln /etc/issue /issue.hard 创建文件/etc/issue的硬链接文件为/issue.hard

所有的软链接文件的权限都是rwxrwxrwx,类型是l à表示指向源文件,软链接类似于windows的桌面快捷方式,硬链接文件类型是- 硬链接文件大小和源文件一样,类似于复制,但是和复制不一样的是,它和源文件是同步更新的,类似于cp –p,当删除源文件的时候,硬链接不会消失,并能访问。为什么能够同步更新呢,使用ls –i来查看文件,可以看到每个文件的inode 在linux里面内核不认字母,他只认数字,内核对文件操作只认数字,文件的数字标识是inode,每个文件必须都要有一个inode,如果一个文件没有inode,则该文件则无法访问,可以看到硬链接的inode和源文件的inode是一样的,所以可以同步更新,相当于i节点映射到两个文件,内核看到两个相同的节点,就都向两个文件写数据

软链接可以跨文件系统生成,硬链接不可以,比如ln a /a.hard是不允许的

权限管理命令:chmod

命令名称:chmod

命令英文原意:change the permissions mode of a file

命令所在路径:/bin/ chmod

执行权限:所有用户

功能描述:改变文件或目录权限

语法:chmod [{ugo}{+-=}{rwx}] [文件或目录]

[mode=421][文件或目录]

范例:$chmod g+w file1 赋予文件file1所属组写权限

$chmod 777 dir1 设定目录dir1为所有用户具有全部权限

u-所有者 g-所属组 o-其他人 +—表示增加去除权限 =表示赋予权限

r-4 w-2 x-1 如果rwxr-xr-- 754

用管理员root创建一个目录,在此目录下面创建一个newfile文件,目录的权限是drwxr-xr-x,文件的权限是-rwxrwxrwx,普通用户是不可以删除newfile文件的,切换用户是su –用户名,为什么不能删除呢,明明有777的权限,如果把目录是权限改成777,把文件是权限改成rw-r—r--,则发现是可以使用普通用户来删除newfile文件,这里面就是一个关于目录和文件的w权限是理解

clip_image002

文件

r-cat,more,head,tail

w-echo,vi

x-命令,脚本

目录

r-ls

w-touch,mkdir,rm

x-cd

权限管理命令:chown

命令名称:chown

命令所在路径:/bin/ chown

命令英文原意:change file ownership

执行权限:所有用户

功能描述:改变文件或目录的所有者

语法:chown [用户][文件或目录]

范例:$chown nobody file1 改变文件file1的所有者为nobody

权限管理命令:chgrp

命令名称:chgrp

命令所在路径:/bin/ chgrp

执行权限:所有用户

功能描述:改变文件或目录的所属组

语法:chgrp [用户组][文件或目录]

范例:$ chgrp adm file1 改变文件file1的所属组为adm

权限管理命令:umask

命令名称:umask

命令所在路径:/bin/ umask

执行权限:所有用户

功能描述:显示,设置文件的缺省权限

语法:umask [-S]

–S以rwx形式显示新建文件或目录缺省权限

范例:$ umask

$umask –S

系统默认创建一个文件的权限使用umask –S或umask 来查看

如果使用umak查看会看到0022,第一个0是特殊权限位,022是用户权限位,是权限掩码值,实际就是755,linux权限规则,缺省创建的文件不能授予可执行的x权限,都把x的1去了,实际都只能是644

文件搜索命令:which

命令名称:which

命令所在路径:/usr/bin/which

执行权限:所有用户

功能描述:显示系统命令所在目录

语法:which [命令名称]

范例:$ which ls

Whereis 和which 一样,which 除了可以找到命令目录,别名记录,where is可以找到命令记录,已经该命令帮助文档所在位置

文件搜索命令:find

命令名称:find

命令所在路径:/usr/bin/find

执行权限:所有用户

功能描述:查找文件或目录

语法:find [搜索路径][搜索关键字]

范例:$ find /etc –name init 在目录/etc中查找文件名里包括init关键字的文件

$ find /etc –type f 在目录/etc中查找文件类型是二进制文件的文件,f二进制文件,l软链接文件

$ find /etc –name init* 在目录/etc中查找以init开头的文件,*是匹配任意字符

$ find /etc –name init??? 在目录/etc中查找以init开头后面是3个字符的文件,?是匹配单个字符

$ find / -size +204800 在根目录下查找大于100MB的文件,这里是204800个数据块,一个数据块大小是512字节

$ find / -user sam 在根目录下查找所有者为sam的文件

尽量不要在根目录下查找,因为查找速度慢,再者是会占用大量系统资源

$ find /etc -ctime -l 在/etc下查找24小时内被修改过属性的文件和目录

天 ctime ,atime,mtime 分钟cmin,amin,mmin

c-change 改变 a-access 访问 m-modify修改 c表示文件属性被修改过,包括所有者,所属组,权限,m表示文件内容被修改过,a表示文件被浏览过

连接符-a and 表示与 –o or表示或

$ find /etc –size +163840 –a –size -204800 在/etc下查找大于80MB小于100MB的文件

$ find /etc –name inittab –exec ls –l {} \; 在/etc下查找inittab文件并显示其详细信息

$ find /home –user samlee –exec rm -rf {} \;在/etc下查找用户是samlee的文件并删除

格式$ find …… –exec 命令 –l {} \; {}代表查询结果 \表示转义符,符号命令使用本身含义 ;表示结果

碰到删除不了的文件,先用ls –i来查看改文件对应的i节点是数字,假如是16,再使用$ find . -inum 16 –exec rm -rf {} \;来删除就行了

文件搜索命令:locate

命令名称:locate

指令英文原义:list files in databases

命令所在路径:/usr/bin/locate

执行权限:所有用户

功能描述:寻找文件或目录

语法:locate [搜索关键字]

范例:$ locate file 列出所有跟file相关的文件

Locate和find有区别,locate是根据一个数据库来查询的,所以新创建的文件是不能找到的,一般还要和updatedb配合使用

文件搜索命令:updatedb

命令名称:updatedb

指令英文原义:updatedb the slocate database

命令所在路径:/usr/bin/updatedb

执行权限:root

功能描述:建立整个系统目录文件是数据库

语法:updatedb

范例:#updatedb

文件搜索命令:grep

命令名称:grep

命令所在路径:/bin/grep

执行权限:所有用户

功能描述:在文件中搜索字串匹配的行并输出

范例:#grep ftp /etc/services

文件搜索命令:man

命令名称:man

命令英文原意:manual

命令所在路径:/usr/bin/man

执行权限:所有用户

语法:man [命令或配置文件]

功能描述:获得帮助信息

范例:$man ls 查看ls命令的帮助信息

$man services 查看配置文件services的帮助信息

比如man passwd,passwd可以是命令也可以是配置文件,如果使用man passwd则man的是命令,因为系统默认先man命令,如果想man配置文件,则要使用man 5 passwd,不加5的话实际上是man 1 passwd,只是1被隐藏了

文件搜索命令:info

命令名称:info

命令英文原意:information

命令所在路径:/usr/bin/ info

执行权限:所有用户

语法:info [任何关键字]

功能描述:获得帮助信息

范例:$ info ls 查看ls指令的帮助信息

文件搜索命令:whatis

命令名称:whatis apropos makewhatis

命令英文原意:search the whatis database for strings

命令所在路径:/usr/bin/whatis apropos

/usr/sbin/makewhatis

执行权限:所有用户,root

语法:whatis apropos [任何关键字]

功能描述:获得索引的简短说明信息

范例:$whatis ls

$apropos fstab 相当于man -k

Ls –help是把命令可用选项列出来

#makewhatis 建立whatis 和apropos搜索使用的数据库,当使用这两个命令发生错误时,就是whatis database没有建立

Help 查看shell内置命令的帮助

压缩解压命令:gzip

命令名称:gzip

命令英文原意:GNU zip

命令所在路径:/bin/gzip

执行权限:所有用户

语法:gzip选项[文件]

功能描述:压缩文件

压缩后文件格式:.gz

使用gzip产生压缩包之后,原压缩包会被删除,只留下新创建的压缩包,gzip只能压缩文件,不能压缩目录

压缩解压命令:gunzip

命令名称:gunzip

命令英文原意:GNU unzip

命令所在路径:/bin/gunzip

执行权限:所有用户

语法:gunzip选项[压缩文件]

功能描述:解压缩.gz的压缩文件

范例:$gunzip file1.gz

压缩解压命令:tar

命令名称:tar

命令所在路径:/bin/tar

执行权限:所有用户

语法:tar选项[cvf][目录]

-c 产生.tar打包文件

-v 显示详细信息

-f 指定压缩后的文件名

-z 打包同时压缩

功能描述:打包目录

压缩后文件格式:tar.gz

范例: $tar –zcvf dir1.tar.gz dir1 将目录dir1压缩成一个打包并压缩的文件

file [文件名] 可以帮助判断某个文件是什么文件类型

有些unix不支持直接打包并压缩成一个文件,则要分步执行,先打包成tar tar –cf newdir4.tar newdir4,再压缩gzip newdir4.tar

clip_image004

压缩解压命令:tar

语法:tar选项[cvf][目录]

-x 解包.tar文件

-v 显示详细信息

-f 指定解压文件

-z 解压缩

范例:$tar –zxvf dir1.tar.gz

分两步解压的话就是gunzip newdir.tar.gz tar –xf newdir.tar

压缩解压命令:zip

命令名称:zip

命令所在路径:/usr/bin/zip

执行权限:所有用户

语法:zip选项[-r][压缩后文件名称][文件或目录]

-r 压缩目录

功能描述:压缩文件或目录

压缩后文件格式:.zip

范例:$zip services.zip /etc/services 压缩文件

$zip –r test.zip /test 压缩目录

压缩解压命令:unzip

命令名称:unzip

命令所在路径:/usr/bin/unzip

执行权限:所有用户

语法:unzip [压缩文件]

功能描述:解压.zip的压缩文件

范例:$unzip test.zip

压缩解压命令:bzip2 bzip2压缩比很厉害,相当于gzip的升级版,多了个-k的参数

命令名称:bzip2

命令所在路径:/usr/bin/ bzip2

执行权限:所有用户

语法:bzip2 选项[-k][文件]

-k 产生压缩文件后保留原文件

功能描述:压缩文件

压缩后文件格式:bz2

范例:$bzip2 –k file1

压缩解压命令:bunzip2

命令名称:bunzip2

命令所在路径:/usr/bin/ bunzip2

执行权限:所有用户

语法:bunzip2 选项[-k][压缩文件]

-k 解压缩后保留原文件

功能描述:解压缩

范例:$bunzip2 –k file1.bz2

网络通信命令:write

命令名称:write

命令所在路径:/usr/bin/write

执行权限:所有用户

语法:write <用户名>

功能描述:向另外一个用户发信息。以crtl+d作为结束

范例:$write webmaster

必须在线的用户,才能接受信息

网络通信命令:wall

命令名称:wall

命令所在路径:/usr/bin/wall

执行权限:所有用户

语法:wall [message][文件名]

功能描述:向所有用户广播信息

范例:$wall hellp

网络通信命令:ping

命令名称:ping

命令所在路径:/usr/sbin/ ping

执行权限:root

语法:ping 选项 ip地址

-s [包大小] ip地址 发送特定大小的包

功能描述:测试网络连通性

范例:#ping 192.168.1.1

网络通信命令:ifconfig

命令名称:ifconfig

命令所在路径:/usr/sbin/ ifconfig

执行权限:root

语法:ifconfig 选项[-a][网卡设备标识]

-a 显示所有网卡信息

功能描述:查看网络设置信息

范例:#ifconfig -a

网络通信命令:ifconfig

命令名称:ifconfig

命令所在路径:/usr/sbin/ ifconfig

执行权限:root

语法:ifconfig 选项[-a][网卡设备标识]

-a 显示所有网卡信息

Ifconfig eht0 ip地址 改变网卡的IP地址,但是重启后会恢复到原来的IP地址

功能描述:查看网络设置信息

范例:#ifconfig -a

系统关机命令:shutdown

命令名称:shutdown

命令所在路径:/usr/sbin/ shutdown

执行权限:root

功能描述:关机

范例:#shutdown –h now

系统关机命令:reboot

命令名称:reboot

命令所在路径:/usr/sbin/ reboot

执行权限:root

功能描述:重启系统

范例:# reboot

Shell应用技巧

命令别名,输入输出重定向,管道,命令连接符,命令替换符

Clear是清屏,或者是ctrl+l ctrl+u可以删除光标前面所有的字符

Bash应用技巧

命令补齐:命令补齐运行用户输入文件名起始的若干个字母后,按<tab>键补齐文件名

命令历史:命令历史运行用户浏览先前输入的命令并重新调用它们,用history明年该了可以显示命令列表,按方向键可以查找以前执行过的命令

命令别名定义:

范例:alias copy=cp

alias xrm=”rm –r”

查看别名信息:alias

删除别名:unalias copy

输入输出重定向

同标准I/O一样,shell对于每一个进程预先定义3个文件描述字(0,1,2)。分别对应于:

0 (STDIN)标准输入

1 (STDOUT)标准输出;

2 (STDERR)标准错误输出

&gt; 或&gt;&gt; 输出重定向

范例:ls –l /tmp&gt;/tmp.msg

date &gt;&gt; /tmp.msg &gt;&gt;是在已有文件内容后面追加信息

<输入重定向

范例:wall &lt; /etc/motd 从其他文件中输入,比如已写好的文件,不是指从键盘输入

2> 错误输出重定向

范例:cp –R /usr/backup/usr.bak 2&gt; /bak.error 如果cp操作出错,则把错误信息备份到/bak.error

管道:将一个命令的输出传送给另一个命令,作为另一个命令的输入

使用方法:命令1|命令2|命令3……|命令n

范例: ls –l /etc|more

ls –l /etc|grep init

ls –l /etc|grep init|wc –l wc是计算一个文件有多少行

命令替换符:将一个命令的输出作为另一个命令的参数。

格式为:命令1 `命令2`

范例:ls –l `which touch` 相当于 ls –l /bin/touch



本文转自 rebelxuan 51CTO博客,原文链接:http://blog.51cto.com/nizhuan/724121

相关文章
|
5天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
1天前
|
监控 Linux Windows
50个必知的Linux命令技巧,你都掌握了吗?(下)
50个必知的Linux命令技巧,你都掌握了吗?(下)
|
1天前
|
Linux Shell Windows
Linux 常用基本命令
Linux 常用基本命令
|
2天前
|
Ubuntu Linux Shell
linux免交互登陆远程主机并执行命令(密钥对和Expect)
linux免交互登陆远程主机并执行命令(密钥对和Expect)
|
2天前
|
Linux
【Linux】常用命令
【Linux】常用命令
21 0
|
2天前
|
安全 Ubuntu Linux
Linux 网络操作命令Telnet
Linux 网络操作命令Telnet
16 0
Linux 网络操作命令Telnet
|
3天前
|
Linux 数据安全/隐私保护
Linux常用命令实例带注释
Linux常用命令实例带注释
30 0
|
3天前
|
Linux 开发工具 数据安全/隐私保护
Linux(19)常用解压命令记录
Linux(19)常用解压命令记录
9 0
|
5天前
|
Linux Perl
Linux系统替换字符串常用命令
请注意,`sed`命令可以非常强大,可以根据不同的需求使用不同的选项和正则表达式来进行更复杂的字符串替换操作。
17 0
|
7天前
|
安全 Linux 开发工具
Linux中可引起文件时间戳改变的相关命令
【4月更文挑战第12天】Linux中可引起文件时间戳改变的相关命令
16 0