linux 常用命令备忘

经常会有一些的Linux命令记不牢,持续整理更新,以便查找。


系统信息

Command Annotation
date 显示当前日期和时间
cal 显示当前的日历
uptime 查看系统运行时间、用户数、负载
w 显示登陆的用户
whoami 查看自己当前的用户名
uname -a 显示内核信息
man command 显示命令的说明手册
df 显示磁盘占用情况
du 显示当前目录的空间占用情况
free 显示内存和交换区占用情况
du -h --max-depth=1 显示当前目录所占空间的大小
lspci -v 查看PCI信息,lspci 是读取 hwdata 数据库
cat /proc/cpuinfo 查看CPU信息
env 查看环境变量
ifconfig 查看所有网络接口的属性
route -n 查看路由表
netstat -antp 查看所有监听端口
netstat -s 查看网络统计信息
last 查看用户登录日志
crontab -l 查看当前用户的定时任务
rpm -qa 查看所有安装的软件包

文件命令

Command Annotation
ls -a / ls -al 查看隐藏文件 / 格式化列出隐藏文件
ls -s 当前目录下的每个文件夹中有多少文件
pwd 显示当前所处路径
make dir 创建新的dir
rm file / rm -r file 删除 / 强制删除file
rm -r dir / rm -rf dir 删除 / 强制删除某dir
cp file1 file2 file1 复制到 file2
cp -r dir1 dir2 dir1复制到dir2,如不存在则创建
mv file1 file2 file1移动到file2
ln -s file link 创建 file 的符号链接 link
touch file 创建新文件
cat file1 >> file2 file1拼接到file2的末尾
cat file1 file2 > file3 file2拼接到file1的末尾创建new file3
head file 查看某文件的前10行
tail file 查看某文件的后10行
cat file | head -n N 查看某文件的前N
wc -l file 查看文件有多少行
wc -w file 查看文件有多少单词
wc -c file 查看文件有多少字符
wc file 默认返回三个值,依次是行数,单词数,字符数
wc file1 file2 可以统计多个文件,默认返回三行,分别是file1 file2 和 total

进程管理

Command Annotation
ps -ef 显示当前所有进程
ps -ef | gerp python 显示python相关的进程
lsof -i: 2223 查看占用某端口程序的进程号
top 显示所有进程的实时运行状态
kill pid 终止某pid进程

文件权限

只有一条命令chmod(change mode), 其执行形式为 chmod 777 file / chmod -r 777 dir

  • 其权限设置分为三级,分别用三位数字代表
    • 第一位为文件拥有者的权限
    • 第二位其他同组用户对这个文件的权限
    • 第三位代表其他不同组用户对其的权限
  • 具体的每位上的数字对应什么权限?
    • 4 —- read(r)
    • 2 —- write(w)
    • 1 —- execute(x)

SSH

Command Annotation
ssh user@host 以某user的身份连接host
ssh -p user@host 在端口p以user的身份连接到host
logout / exit ssh 登陆后的退出命令

scp

  • $ scp [arg] source target
1
2
3
4
5
6
-v : 显示进度,可以用来查看连接、认证或是配置错误。
-r : 复制目录
-C : 使能压缩选项
-P : 选择端口
-4 : 强行使用 IPV4 地址
-6 : 强行使用 IPV6 地址
  • scp local_file remote_username@remove_ip:remote_folder 将本地文件复制到远端服务器。

搜索

Command Annotation
grep pattern files 搜索files中匹配pattern的内容
grep -r pattern dir 递归搜索dir中匹配pattern的内容
command | grep pattern 搜索 command 输出中匹配 pattern 的内容

网络

Command Annotation
ping host 测试某host的网络连接
wget Link 通过网络连接下载
wget -c Link 断点续传下载

安装&卸载

Command Annotation
make install
dpkg -i software.deb 安装包(Debian)
rpm —qpl software.rpm 安装包 Red Hat Package Manager(RPM)
rpm-e file 卸载软件
apt-get upgrade 更新所有已安装的软件包

压缩

  1. tar 只是归档,不是压缩

    • 解包:tar xvf FileName.tar
    • 打包:tar cvf FileName.tar DirName
    • (tar.gz和tgz只是两种不同的书写方式,后者是一种简化书写,等同处理)
  2. .gz

    • 解压1:gunzip FileName.gz
    • 解压2:gzip -d FileName.gz
    • 压缩:gzip FileName
  3. .tar.gz 和 .tgz

    • 解压:tar zxvf FileName.tar.gz
    • 压缩:tar zcvf FileName.tar.gz DirName
    • Linux下压缩比率较tgz大,即压缩后占用更小的空间,使得压缩包看起来更小。 但同时在压缩,解压的过程却是非常耗费CPU时间。
  4. .bz2

    • 解压1:bzip2 -d FileName.bz2
    • 解压2:bunzip2 FileName.bz2
    • 压缩: bzip2 -z FileName
  5. .tar.bz2

    • 解压:tar jxvf FileName.tar.bz2
    • 压缩:tar jcvf FileName.tar.bz2 DirName
  6. zip 格式是开放且免费的,所以广泛使用在 Windows、Linux、MacOS 平台,要说 zip 有什么缺点的话,就是它的压缩率并不是很高,不如 rar及 tar.gz 等格式。

    • 压缩:zip -r examples.zip examples (examples为目录)
    • 解压:zip examples.zip

Linux下对于占用空间与耗费时间的折衷 多选用tgz格式,不仅压缩率较高,而且打包、解压的时间都较为快速,是较为理想的选择。

快捷键

Command Annotation
Ctrl + C 终止当前命令
Ctrl + Z 暂停当前命令,fg 可恢复运行
Ctrl + D 注销当前对话(类似exit)
Ctrl + U 删除整行
Ctrl + W 删除当前行中的字
!! 重复上次的命令

其他操作

python path

  • Linux 非root用户pip install package -–user 默认的安装路径。查看后发现默认安装路径在/home/username/.local/bin/
  • whereis python 查看python的安装路径
  • ls /usr/bin/python* 查看可用的python脚本 for non root user modify python
  • alias python='/usr/bin/python3.4' 写入vim ~/.bashrc
  • . ~/.bashrc 重载bashrc 脚本或者重新登陆即可生效
  • python --version

bypy

1
2
3
4
5
bypy list                 # 显示文档
bypy upload filename -v # 上传某文件,显示进度
bypy -c # 取消令牌文件。一段时间后要重新授权
bypy downdir filename # 下载
bypy compare # 比较本地目录和网盘目录
-------------本文结束 感谢您的时间-------------
0%