03. command
1. 目录、文件命令
pwd
tree
cd
ls
mkdir
touch
mv
rm
rmdir
cp
scp
scp from_ip to_ip
scp aliyun:testdir/test.cpp .
ln
ln -s test.md link-test
chmod
chmod +x test
chmod u+x test
chmod a-x test
chmod 777 test
chown
sudo adduser jesscia
chown jesscia:jesscia test
find
find . -name *.cpp
find . -name '*.py' | xargs cat | wc -l
xargs: 将 stdin 中的数据用分割成命令行参数
cut
把 PATH 用 ':' 分割,留下第 1 列数据
echo $PATH | cut -d ':' -f 1
diff
sort
2. 查看、编辑命令
cat
head
head -n 5 test.md
tail
tail -f test.log # 滚动刷新
more
less
history
sed
awk
sed -n '1p' test.md
-n 取消默认输出
'1p' 只打印第一行
grep
grep include test.cpp
vi/vim
3. 压缩、解压命令
tar
tar -cvf 1.tar 1.txt # 打包
tar -zcvf 1.tar.gz 1.txt # 打包 + gzip 压缩
tar -jcvf 1.tar.bz2 1.txt # 打包 + bzip2 压缩
tar -zcvf test.tar.gz test1.c test2.c
tar -ztvf 1.tar.gz # 查阅 tar 包
tar -zxvf 1.tar.gz # 解压缩
tar -zxvf test.tar.gz test2.c # 部分解压缩
gzip
gzip -l * # 显示压缩文件的详细信息,但不解压
gzip * # 压缩为 .gz
gzip -rv 1/ # 递归地压缩目录
gzip -r log.tar # log.tar 压缩为 log.tar.gz
gzip -dv * # 解压缩所有文件,并列出详细信息
gzip -dr 1/ # 递归地解压目录
zip
4. 系统管理
# 查看 CPU 信息
cat /proc/cpuinfo
# 查看当前登录用户
w
# 关闭系统
shutdown
# 重启
reboot
# 退出 shell,并返回给定值
exit
time
# 查看或设置系统时间与日期
date
# 格式化输出
date +"%Y-%m-%d"
# 输出昨天日期
date -d "1 day ago" +"%Y-%m-%d"
# 查看系统当前进程状态
ps
ps aux
ps aux | grep -i zsh
# 删除当前正在运行的进程
kill
kill -9 {pid}
5. 网络管理
# 下载文件
curl, wget
curl 功能更多,如访问网站时添加证书
wget 单纯下载
# 查看和设置系统的主机名
hostname
# 临时设置,重启恢复
hostname york-machine
# 查
ifconfig
# telnet 方式登录远程主机,对远程主机进行管理
telnet
# ssh 方式连接远程主机
ssh
# 为 ssh 生成、管理和转换认证密钥
ssh-keygen
# 查看域名信息
host, nslookup
ping
# 追踪数据在网络上的传输时的全部路径
traceroute
# 查看当前工作的端口信息
netstat
netstat -nt
6. 硬件管理
# 查看磁盘空间
df
df -h
# 查看文件或目录的磁盘空间
du
du -sh
# 实时查看系统整体运行状态,如:CPU、内存
top
# 查看已使用和未使用的内存
free