一、典型Shell命令的操作和使用
1 目录操作
1.1切换目录(cd)
cd / //切换到根目录
cd /bin //切换到根目录下的bin目录
cd ../ //切换到上一级目录 或者使用命令:cd ..
cd ~ //切换到home目录
cd - //切换到上次访问的目录
cd xx(文件夹名) //切换到本目录下的名为xx的文件目录,如果目录不存在报错
cd /xxx/xx/x //可以输入完整的路径,直接切换到目标目录,输入过程中可以使用tab键快速补全
1.2查看目录(ls)
ls //查看当前目录下的所有目录和文件
ls -a //查看当前目录下的所有目录和文件(包括隐藏的文件)
ls -l //列表查看当前目录下的所有目录和文件(列表查看,显示更多信息),与命令"ll"效果一样
ls /bin //查看指定目录下的所有目录和文件
1.3查看当前目录(pwd)
pwd //显示当前位置路径
1.4创建目录(mkdir)
make directory
mkdir tools //在当前目录下创建一个名为tools的目录
mkdir /bin/tools //在指定目录下创建一个名为tools的目录
1.5删除目录(rmdir)
remove directory
rm 文件名 //删除当前目录下的文件
rm -f 文件名 //删除当前目录的的文件(不询问)
rm -r 文件夹名 //递归删除当前目录下此名的目录
rm -rf 文件夹名 //递归删除当前目录下此名的目录(不询问)
rm -rf * //将当前目录下的所有目录和文件全部删除
rm -rf /* //将根目录下的所有文件全部删除【慎用!相当于格式化系统】
2 权限操作
2.1文件权限
rwx:
r-可读 w-可写 x-可执行
权限按照rwx来排列,字母表示有权限,-表示无此位置上的权限示例:rwxrw-r--
前三位rwx:拥有者权限
中间三位rw-:拥有者所在组的组员权限
后三位r--:其他用户的权限
8421法:
r=1 w=2 x=4
数字之和代表所授予权限。一个数字相当于三个字母。
如:rwx=7 ; rwxrw-r--=731
2.2文件授权(chmod)
普通授权 chmod +x a.txt
8421法 chmod 777 a.txt //1+2+4=7,"7"说明授予所有权限
3 文件操作
3.1创建文件(touch)
在当前目录下创建文件,如果文件存在,将文件时间属性修改为当前系统时间
touch a.txt //在当前目录下创建名为a的txt文件(文件不存在)
3.2复制文件(cp)
cp file.txt /path //将file.txt复制到目录/path中
cp -r test/ newtest //将当前test目录下的所有文件复制到新目录newtest下
3.3查看文件(cat)
cat a.txt //查看文件(显示最后一屏)
3.4编辑文件(vi、vim)
有些复杂,详见Vim编辑器常用命令_vim命令-CSDN博客
3.5 删除文件(rm)
rm 文件名 //删除当前目录下的文件
rm -f 文件名 //删除当前目录的的文件(不询问)
4 重定向与管道
4.1重定向
命令 | 说明 |
---|---|
command > file | 将输出重定向到 file |
command < file | 将输入重定向到 file |
command >> file | 将输出以追加的方式重定向到 file |
<< tag | 将开始标记 tag 和结束标记 tag 之间的内容作为输入 |
4.2管道概念
“|”是Linux管道命令操作符,简称管道符。使用此管道符“|”可以将两个命令分隔开,“|”左边命令的输出就会作为“|”右边命令的输入,此命令可连续使用,第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。
简单一点说:管道使得多个操作首尾相连,使用管道可以一次进行多步shell操作
……嗯,类似《人体蜈蚣》…………
案例:hello.sh
cat hello.sh | sort | uniq | grep 'better’
5 进程相关操作
5.1显示磁盘使用情况(df)
df -h //一种易看的显示
5.2查看进程(ps)
ps -A //列出所有进程
ps -ef //查看所有正在运行的进程
ps -ef | grep [pid] //查找指定的进程
ps -au //显示进程详细信息
6 shell编程
6.1创建shell脚本
使用vi/vim命令创建文件(或使用touch命令创建文件,文件后缀为.sh)
6.2执行shell脚本
方法1:作为可执行程序运行
使用 ./[文件名].sh 运行shell脚本文件
chmod +x ./test.sh #使脚本具有执行权限
./test.sh #执行脚本
注意:该方法需要进行chmod操作
方法2:作为解释器参数运行
使用 sh [文件名].sh 运行shell脚本文件
/bin/sh test.sh #直接运行解释器
6.3编写shell脚本
使用vim进行编写。