1. 查看已安装的程序的方法
dpkg -l | grep 'program_name'
2. Linux任务/进程前后台切换
将后台中的命令调至前台继续运行: fg %jobnumber
将一个在后台暂停的命令,变成继续执行 (在后台执行): bg %jobnumber
3. 显示目录或文件的大小
du 会显示指定的目录或文件所占用的磁盘空间
du -sh <指定的目录>
#参数解析
-s 仅显示总计
-h 以K,M,G为单位,提高信息的可读性
4. Ubuntu 常用解压与压缩命令
.tar是打包,.tar.gz才是压缩过的文件,.tar.gz常见于unix系统,在ubuntu或macos可以直接解压,而.zip常见于windows系统
.tar 文件
# 仅打包,并非压缩
tar -xvf FileName.tar # 解包
tar -cvf FileName.tar DirName # 将DirName和其下所有文件(夹)打包
#参数解析
-x 从备份文件中还原文件
-v 显示指令执行过程
-f 指定备份文件
-c 建立新的备份文件
-C 切换到指定的目录
.gz文件
# .gz
gunzip FileName.gz # 解压1
gzip -d FileName.gz # 解压2
gzip FileName # 压缩,只能压缩文件
# 参数解析
-d 解开压缩文件
.tar.gz文件、 .tgz文件
# .tar.gz 和 .tgz
tar -zxvf FileName.tar.gz # 解压
tar -zcvf FileName.tar.gz DirName # 将DirName和其下所有文件(夹)压缩
tar -C DesDirName -zxvf FileName.tar.gz # 解压到目标路径
# 参数解析
-x 从备份文件中还原文件
-v 显示指令执行过程
-f 指定备份文件
-c 建立新的备份文件
-C 切换到指定的目录
-z 通过gzip指令处理备份文件。
.zip文件
# 感觉.zip占用空间比.tar.gz大
unzip FileName.zip # 解压
unzip FileName.zip -d Filedir # 解压到目标目录
zip FileName.zip DirName # 将DirName本身压缩
zip -r FileName.zip DirName # 压缩,递归处理,将指定目录下的所有文件和子目录一并压缩
.rar文件
# mac和linux并没有自带rar,需要去下载
rar x FileName.rar # 解压
rar a FileName.rar DirName # 压缩
5. Ubuntu 创建新用户
sudo su #切换到 root 权限
sudo useradd -r -m -s /bin/bash XXX //XX指代创建的用户名
useradd命令参数意义:
·-r:建立系统账号 系统账号是否有特别的权限不清楚
·-m:自动建立用户的登入目录
·-s:指定用户登入后所使用的shell
sudo passwd XXX //XXX指创建的用户名
# 设置用户 root 权限
sudo vim /etc/sudoers #修改该文件,在“root ALL=(ALL:ALL) ALL”这一行下面加入一行:
XXX ALL=(ALL:ALL) ALL #设置 root 权限
usermod -G sudo newuser2
# usermod命令用于修改用户的基本信息,相关参数信息
-c<备注>:修改用户帐号的备注文字;
-d<登入目录>:修改用户登入时的目录;
-e<有效期限>:修改帐号的有效期限;
-f<缓冲天数>:修改在密码过期后多少天即关闭该帐号;
-g<群组>:修改用户所属的群组;
-G<群组>;修改用户所属的附加群组;
-l<帐号名称>:修改用户帐号名称;
-L:锁定用户密码,使密码无效;
-s<shell>:修改用户登入后所使用的shell;
-u<uid>:修改用户ID;
-U:解除密码锁定。
参考链接:
Ubuntu 18.04下用户的创建、修改权限及删除用户的方法
6. ps aux输出格式:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
格式说明:
USER: 行程拥有者
PID: pid
%CPU: 占用的 CPU 使用率
%MEM: 占用的记忆体使用率
VSZ: 占用的虚拟记忆体大小
RSS: 占用的记忆体大小
TTY: 终端的次要装置号码 (minor device number of tty)
STAT: 该行程的状态,linux的进程有5种状态:
D 不可中断 uninterruptible sleep (usually IO)
R 运行 runnable (on run queue)
S 中断 sleeping
T 停止 traced or stopped
Z 僵死 a defunct (”zombie”) process
注: 其它状态还包括W(无驻留页), <(高优先级进程), N(低优先级进程), L(内存锁页).
START: 行程开始时间
TIME: 执行的时间
COMMAND:所执行的指令
7. SCP 命令
实例1:从远处复制文件到本地目录
scp root@192.168.120.204:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/
实例2:从远处复制到本地
scp -r root@192.168.120.204:/opt/soft/mongodb /opt/soft/
实例3:上传本地文件到远程机器指定目录
scp /opt/soft/nginx-0.5.38.tar.gz root@192.168.120.204:/opt/soft/scptest
实例4:上传本地目录到远程机器指定目录
scp -r /opt/soft/mongodb root@192.168.120.204:/opt/soft/scptest
8. rsync 命令
rsync -avP ubuntu@111.230.41.X:/home/ubuntu/sblive.iso /test
-v, --verbose 详细模式输出
-P 等同于 --partial--progress 显示备份过程
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r :对子目录以递归模式,即目录下的所有目录都同样传输
9. netstat 命令
netstat -atulnp 会显示所有端口和所有对应的程序,用 grep 管道可以过滤出想要的字段,查看前先切换到root用户下
-a :all,表示列出所有的连接,服务监听,Socket资料
-t :tcp,列出tcp协议的服务
-u :udp,列出udp协议的服务
-n :port number, 用端口号来显示
-l :listening,列出当前监听服务
-p :program,列出服务程序的PID
10. xagrs 命令
将前一个命令的标准输出 转为后一个命令的 命令行参数
删除:
$find ./ -name ".DS_Store" | xargs rm
-p 参数打印出要执行的命令,询问用户是否要执行
$echo 'one two three' | xargs -p touch
touch one two three ?...
-t参数则是打印出最终要执行的命令,然后直接执行,不需要用户确认。
$echo 'one two three' | xargs -t rm
rm one two three
如果xargs要将命令行参数传给多个命令,可以使用-I参数。
-I指定每一项命令行参数的替代字符串。
$cat foo.txt | xargs -I file sh -c 'echo file; mkdir file'
one
two
three
$find ./ -name "*.fastq" | xargs -I {} mv {} GSE113701/