linux常用指令
-a all -s size -L link -h human-readable -i inode -I ignore -f force -r reverse
; 将多个指令分隔开来,从左到右顺序执行
| 上一条指令的输出是下一跳指令的参数
echo 输出
cd /a 进入a目录
备注:假设a为'a b'这样有空格的目录,得加入\转义,即: 'a\ b'
cd .. 返回上一级
cd ../.. 返回上两级
cd 进入当前人主目录
cd ~user 进入当前用户主目录
cd - 返回上次所在的目录
pwd 显示当前目录(pre work dir)
ls 查看目录文件
ls -F 查看文件目录并在每个文件的末尾加上一个字符代表文件类型,
@ 符号链接、| FIFOS 、/ 目录、= 套接字
ls -l 列出文件详细信息,创建者,创建时间及权限等
ls -s 列出文件并加上文件大小
ls -a 查看文件(包含隐藏文件)
mkdir a b 创建目录a、b
touch file 若文件不存在,创建文件,若存在,修改文件事件属性为当前时间
cat 打开文件
vim 编辑文件
mv 重命名文件或把文件移动到文件夹
mv a.txt b.txt a.txt重命名为b.txt
mv a.txt b a.txt移动到b文件夹
r(recursion) 目录递归 f 强制处理,无需确认
rm 用于删除文件或目录
rm 删除文件(不能删除目录)
rm -i 删除文件,并在删除前逐一确认
rm -f 删除文件,即使档案属性设为唯读,无需确认
rm -f * 删除当前目录下的所有文件
rm -fr xx 删除目录下的所有文件和目录
rm -r 删除目录,并将该目录以下的档案递归处理,逐一删除,无需确认
rmdir dir 删除空目录
rm指令极为危险,删除后无法恢复,慎用
pwd(print working directory) 打印当前工作目录
mv dir1 dir2 移动/重命名目录
cp file1 file2 dir复制文件到目标文件夹 cp -a source target 复制目录到目标 eg: cp -a /xxx ./(复制到当前目录)
whereis xx 查找文件位置,可用于查找二进制文件、源代码文件和man手册页,eg: whereis python
which 与whereis类似,也能用于查找源代码文件位置
find 查找文件位置,可用于任何文件 eg: find /Users -name xxx 查找users文件夹下名为xxx的文件
netstat 打印当前网络系统的状态
netstat -a 列出所有端口
netstat -l 列出所有被监听的端口
netstat -an | grep xx 列出xx接口的进程
chown(change owner) 为文件/目录设置拥有者
chmod(change mode) 为文件/目录设置访问权限
备注:linux/Unix系统中文件的访问权限分三种: 拥有者、群组、其他
sudo 以root身份执行 sudo -u username/#uid 以username的身份执行
ps 查看进程 PID进程id TTY次级装置号码 TIME执行时间 CMD执行指令
kill xxx 杀死进程 kill -KILL xxx 强制杀死 kill -9 xxx 彻底杀死,不同指令发送不同信号
kill 给程序发送SIGTERM信号,先释放资源,再停止,阻塞性,例如:若此时进程在等待IO,就不会立即响应
kill -9 发送SIGKILL信号,非阻塞,立即停止
shell中的变量分为两种: 局部变量和环境变量
设置局部变量:
declare a= "111" or a= "11"
设置环境变量:
export a= "11" (局部变量导出为环境变量)
备注:export设置的环境变量的效力仅限于此次登录操作,也就是说关闭窗口后便失效。
env 列出所有环境变量
set 列出局部变量和环境变量
export 列出导出成环境变量的局部变量,
!# xxx 使用xxx路径的解释器来执行脚本
chown 更改文件拥有者与使用者
&& 上一条指令返回为真就执行下一条
|| 上一条指令返回为否就执行下一条
su 更换使用者(例如切换为root权限)
exit
exit $? 保存最后一条命令执行结束的退出状态(执行完一条命令后,立即执行echo$?,可以查看最后一条命令的退出状态值)
sh
执行shell脚本