Linux常用命令很多比如cd、ls、pwd、du、df、tail、head、yum、mv、touch、mkdir、cp、tar等,根据工作内容不同,经常使用的命令也不同,比如运维人员使用tail、head、move、mkdir、cd、ls、cat、tar等,开发人员经常使用grep、mkdir、touch、ls、pwd、cat、echo、rm、tail、wget、find、mv等。下面我将简单说明一些常用的linux
1.cd
cd命令常用于目录之间的切换,如:cd /opt 从当前目录切换到/opt目录下;说到了目录就不得不说一说绝对路径和相对路径了
绝对路径:是指目录下的绝对位置,通常是从根目录开始,windows根目录是指盘符如"C:/"、"D:/"等,linux的根目录是指"/"。绝对路径下切换工作目录例如:cd /opt/abc/
相对路径:是指从当前目录下开始的相对位置,也就是说这个目录在当前目录的什么位置,相对路径的代表"./"和"../"。相对路径下切换目录例如:cd ./abc 表示切换到当前目录下的abc目录,cd ../abc 表示切换到当前目录的上一级目录下的abc目录
示例:
root@jia:~# cd /opt//此处为绝对路径,切换目录到”/opt“
root@jia:/opt#
root@jia:/opt# cd ///此处为绝对路径,切换目录到根目录也就是”/“
root@jia:/#
root@jia:/opt# cd ../home///此处为相对路径,切换到当前目录的上一级目录中的home目录
root@jia:/home#
root@jia:/home# cd ./jia///此处为相对路径,切换到当前目录的jia目录
root@jia:/home/jia#
2.ls
ls命令是用来列出目录中内容以及文件夹,语法: ls 参数 路径/目录名,此处路径可以是绝对路径也可以是相对路径
ls常用参数介绍:
参数
解释
-a
列出目录下所有内容,包括隐藏内容
-A
列出目录下所以内容,包括隐藏内容,但不包括 "." 和 "../"
-b
列出目录本身,即 "."
-f
不排序进行列出
-i
列出目录内容并列出索引号
-l
以长格式进行列出,列出权限、所有者、大小、创建时间等
-n
列出目录同时显示UID和GID和 ”-l” 类似
-R
递归显示目录,也就是同时显示当目录下目录中的内容,依次类推
-S
根据文件大小进行排序
-t
根据时间进行排序
示例:
root@jia:/opt# ls//列出当前目录内容
root@jia:/opt# ls -a //列出当前目录下所有内容,包括隐藏目录
root@jia:/opt# ll//相当于"ls -l",长格式列出
root@jia:/opt# ls ///列出根目录下内容
root@jia:/opt# ls ..///列出当前目录的上一级目录的内容
3.pwd
pwd命令用于查看当前的工作目录,也就是当前所在目录的路径,此处查看的是绝对路径
示例:
root@jia:/opt# pwd
/opt/
root@jia:/etc/apt# pwd
/etc/apt/
4.touch
touch命令用于创建文件,语法:"touch 参数 文件名称",这里需要注意的是touch命令不是文件编辑器
示例:
root@jia:/opt# touch abc
root@jia:/opt# ls
jia abc
root@jia:/opt# touch test test1 test2//同时在当前目录下创建多个文件
root@jia:/opt# ls
jia abc test test1 test2
root@jia:/opt# touch /home/test /home/test1 /home/test2//在home目录下创建多个文件
root@jia:/opt# ls /home/
jia test test1 test2
5.mkdir
mkdir命令用于创建目录,语法:"mkdir 参数 目录名"
常用参数介绍:
参数
解释
-m
创建目录同时设置权限,类似于chmod
-p
递归创建目录
-v
显示创建目录的过程信息
示例:
root@jia:/opt# mkdir test
root@jia:/opt# ls
jia abc test
root@jia:/opt# mkdir -p a/b/c/d//递归创建
root@jia:/opt# ls -R//递归列出
jia abc test
./a:
b
./a/b:
c
./a/b/c:
d
6.rm
rm命令用于删除文件,可以删除目录或者文件,语法: "rm 参数 文件名/目录名",在这里提醒大家一句:在正式环境中不建议使用此命令,使用前请三思而行,一不留神就会让你终身难忘的
常用参数介绍:
参数
解释
-f
强制删除,删除时不提示
-i
删除前进行确认
-r
删除目录
-R
递归删除
-v
显示删除过程详细信息
示例:
root@jia:/opt# ls
jia abc test test1 test2
root@jia:/opt# rm test
root@jia:/opt# ls
jia abc test1 test2
root@jia:/opt# rm -r jia
root@jia:/opt# ls
abc test1 test2
root@jia:/opt# rm -rf abc//删除文件不提示,可删除目录和文件,常用但不建议用
root@jia:/opt# ls
test1 test2
7.cp
cp命令用于复制文件以及目录,语法:cp 参数 源文件 目录/目标文件,默认只能复制文件,复制目录需要加 "-r" 参数
常用参数介绍:
参数
解释
-f
覆盖前不询问
-i
覆盖前进行询问
-l
不进行复制链接文件
-n
不覆盖已有的文件
-r
复制目录
-R
递归进行复制目录下的文件及目录
示例:
root@jia:/opt# cp test1 /etc///复制当前目录下test1到/etc目录下
root@jia:/opt# ls /etc/
....忽略其他test1
root@jia:/opt# cp -r abc /etc///复制目录下abc目录到/etc目录下
8.mv
mv命令用于移动文件及目录,语法:mv 参数 源文件 目标目录,这里为大家提供一个mv的技巧,mv不但可以移动文件还可以对文件进行重命名,当源文件目录和目标目录相同时会将文件进行改名
常用参数介绍:
参数
解释
-f
覆盖前不进行询问
-i
覆盖前进行询问
-n
移动时不进行覆盖
示例:
root@jia:/opt# mv test1 ///将文件test1移动到根目录
root@jia:/opt# ls
test2
root@jia:/opt# mv test2 test1//重命名test2为test1
root@jia:/opt# ls
test1
9.cat
cat命令用于显示文件所有内容,语法:cat 参数 文件
常用参数介绍:
参数
解释
-b
对于非空行输出行进行编号
-E
在行结束最后加$符号
-n
对所有行输出进行编号
-s
多行空行将以一行空行进行显示
示例:
root@jia:/opt# cat test2
文件内容
root@jia:/opt# cat >>test2<>文件名<
>输入行1
>输入行2
>输入行3
EOF
10.head
head命令用于显示文件内容,用于查看文件前几行内容,语法:head 参数 文件
示例:
root@jia:/opt# head -100 test1 //显示文件前100行内容
文件前一百行内容
root@jia:/opt# head -10 test1 //显示文件前10行内容
文件前10行内容
11.tail
tail命令用于动态显示文件内容,用于查看文件后几行内容,与head想反一个前几行一个后几行,语法:tail 参数 文件
常用参数介绍:
参数
解释
-f
实时显示文件内容,也就是动态查看文件内容
-n
输出文件的多少行
示例:
root@jia:/opt# tail -100 test1 //显示test1文件中后100行内容
后100行内容
root@jia:/opt# tail -f test1//动态显示文件内容,多用于日志查询,以及日志排测,强烈建议运维人员记住
12.df
df命令用于查看磁盘分区,语法:df 参数 ,常用参数组合:df -lh
常用参数介绍:
参数
介绍
-a
显示所有文件系统的使用情况
-h
以可读的大小单位进行显示
-H
以可读大小单位显示,但不以1024计算,以1000进行计算
-i
显示文件系统的索引信息
-k
以K为单位进行显示文件系统使用清空
-t
显示指定文件系统类型的信息
-T
只显示文件系统类型
-l
以长格式显示文件系统信息
示例:
root@jia:/opt# df -lh//查看文件系统的详细信息
Filesystem Size Used Avail Use% Mounted on
udev 921M 0 921M 0% /dev
tmpfs 193M 944K 192M 1% /run
/dev/sda2 98G 3.7G 90G 4% /
tmpfs 962M 0 962M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 962M 0 962M 0% /sys/fs/cgroup
/dev/loop0 90M 90M 0 100% /snap/core/7917
/dev/loop1 55M 55M 0 100% /snap/lxd/12211
tmpfs 193M 0 193M 0% /run/user/0
13.du
du命令常用于查看磁盘使用量,查看文件目录及文件的大小,语法:du 参数,常用命令:du -sh
常用参数介绍:
参数
解释
-a
输出所有文件磁盘大小,包括目录
-c
显示总大小
-h
以可读的方式显示文件大小
-k
以K为单位显示文件大小
-m
以M为单位显示文件大小
-S
不显示子目录的大小
-s
显示查询文件大小的总和
root@jia:/opt# du -sh//显示查询文件的总大小
5.2M.
14.echo
echo命令用于打印字符,语法:echo 字符
示例:
root@jia:/opt# echo 123
123
root@jia:/opt# echo abc > test1//输出字符到test1文件,覆盖文件
root@jia:/opt# echo 123 test1//输出字符到test1文件,增加到文件
15.find
find命令用于文件查找或者目录查找,语法:find 路径 参数 参数值
常用参数介绍:
参数
解释
- -name
以名称进行查询文件
-user
安照用户进行查询文件
-group
按照属组查询文件
-mtime
安照更改时间进行查询文件
-ctime
安照创建时间进行查询文件
-type
按照文件类型进行查询
-size
按照文件大小进行查询
-prune
忽略某个目录进行查询
-depth
查找完当前目录再查询子目录
示例:
root@jia:/opt# find ./ -name “*.txt” | xargs rm//删除当前目录下所有以txt结尾的文件
root@jia:/opt# find /home -size +512k //查大于512k的文件
root@jia:/opt# find /home -size -512k //查小于512k的文件
root@jia:/opt# find /home -links +2 // 查硬连接数大于2的文件或目录
root@jia:/opt# find /home -perm 0700 //查权限为700的文件或目录
root@jia:/opt# find / -amin -10 //查找在系统中最后10分钟访问的文件
root@jia:/opt# find / -atime -2 //查找在系统中最后48小时访问的文件
root@jia:/opt# find / -empty //查找在系统中为空的文件或者文件夹
root@jia:/opt# find / -group cat //查找在系统中属于 groupcat的文件
root@jia:/opt# find / -mmin -5 // 查找在系统中最后5分钟里修改过的文件
root@jia:/opt# find / -mtime -1 //查找在系统中最后24小时里修改过的文件
root@jia:/opt# find / -nouser //查找在系统中属于作废用户的文件
root@jia:/opt# find / -user fred //查找在系统中属于FRED这个用户的文件
16.wget
wget是一个下载文件的工具,它用在命令行下,语法:wget 参数 连接地址
常用参数介绍:
参数
解释
-b
后台进行下载
-q
静默下载
-v
下载时显示详细信息
-nc
已下载文件不重复下载文件
-c
继续下载以下载部分的文件
-S
打印服务器的响应
-4
仅连接ipv4的连接
-6
仅连接ipv6的连接
-nd
不创建目录
-x
强制创建目录
-nH
不要创建主目录
--http-user=user
--http-password=pass
设置http用户密码
--secure-protocol=auto
选择安全协议进行下载,参数有auto、SSLv2、SSLv3、TLS v1
--ftp-user=user
设置ftp用户名
--ftp-password=pass
设置ftp密码
-r
递归进行下载
示例:
root@jia:/opt# wget http://nginx.org/download/nginx-1.17.6.tar.gz//下载nginx到当前目录,文件名为nginx-1.17.6.tar.gz