-a 看当前目录以及隐藏目录(“.”“..”)-A 与-a基本类似,但是不显示“.”和“..”两个隐藏的目录-l 以长格式显示文件和目录的列表(看详细信息)-d 显示目录本身的属性,常与-l同时使用-h 以更人性化的方式显示出目录或文件的大小,常与-l同时使用-R 以递归的方式显示出目录或文件的大小,常与-l同时使用
cd / 去根cd . 去当前目录cd .. 去上级目录cd ~ 去当前用户目录cd - 去上一次去的目录
-p 一次性创建多个目录-v 显示详细
-f强制不提示-r递归删除注:一般用rm -rf直接删除文件或目录
echo “nihao” >> test.txt注:>输出重定向 原理:先清空,后把东西写入文件注:>>追加输出重定向 原理:直接在文件的末行追加内容
[root@localhost ~]# echo -e "aa\nbb" >>yyy #-e,激活转义符\n
[root@localhost ~]# cat yyy
aa
bb
[root@localhost ~]# cat aa
111
[root@localhost ~]# cat bb
222
[root@localhost ~]# cat cc
333
[root@localhost ~]# cat aa bb cc
111
222
333
[root@localhost ~]# cat aa bb cc >hello
[root@localhost ~]# cat hello
111
222
333
cp /tmp/test . 把/tmp/test复制到当前目录-r递归,把所有(目录及目录下的文件)的都复制过去-p复制文件时保持文件的属性不变-a等同于-dpr
在linux中,mv可以直接重命名(即移动改名),如果在根下有一个test文件,给test文件改名可以用mv命令:mv /test /test.txt
-name按名称查找 例:find /etc -type f -name “*k*” 寻找/etc下含有k的文件-size按大小查找-mtime按时间查找find . -type f -name “test”寻找当前目录下名字为test的文件find . -type f !-name “test”寻找当前目录下名字不为test的文件把当前目录下名字含有test的文件移到/tmp下(1)find . -type f -name “test” | xargs -i mv {} /tmp/(2)find . -type f -name “test” -exec mv {} /tmp \;
type cdcd is a shell builtin [cd是一个内部命令]type ifconfigIfconfig is /sbin/ifconfig [ifconfig是一个外部命令]
用于统计制定目录或文件所占用磁盘的大小(一般直接用 du -sh查看大小)格式:du[选项] 目录或文件名-a 统计磁盘空间占用时所有的文件,而不仅仅是统计目录-s 只统计所占用空间总的大小注:du -sh ./* 工作当中清空大文件,手动清空需要用du -sh ./*命令一层一层的进入到目录里去手动排查。
stat -c %a 文件 查看文件属性权限(以数字形式显示)stat -c %A 文件 查看文件属性权限(以字母形式显示)
cat查看文件内容,可同时显示多个文件的内容-n显示行号-A显示所有的字符(通过windows系统拷贝过来的件无法直接cat到,需要加此选项)more一点一点看(只能往下走),看完就出来了less 可以上下翻着看,看完出不来(ctrl+z出去)head 默认从上往下看十行,head -2 从上往下看两行tail 默认从下往上看十行,tail -3 从下往上看三行
作用:制作归档文件,释放归档文件归档格式:tar 参数 归档文件名 源文件或目录释放格式:tar 参数 归档文件名 -C 指定到哪个目录-z 调用gzip程序进行压缩或解压-j 调用bzip2程序进行压缩或解压-c 创建.tar格式的包文件-v 输出详细信息-f 表示使用归档文件(后面需要紧跟归档文件名)-x 解开.tar格式的包文件-C 解包时指定释放的目标目录--exclude 排除某个文件再打包例:打包压缩(排除test1这个文件)tar zcvf xiaohong.tar.gz xiaohong--exclude “test1”参数前可以不加“-”,如果加“-”,f参数必须在最后解压 tar xf xiaohong.tar.gz -C /root 解压时要解压到其他目录打包压缩的三个潜规则:(1)打包目录时必须压缩;(2)压缩必用.tar.压缩格式;(3)必须要 当前(相对路径)压缩。
-A n (n是一个整数) 表示将匹配行的后n行也显示-B n (n是一个整数) 表示将匹配行的前n行也显示-C n (n是一个整数) 表示将匹配行的前n行和后n行也显示-n 显示行号-i 忽略大小写-v 取反-o 只输出匹配到的内容-w 精确匹配-l 显示匹配到内容的文件名-E =egrep egrep支持基础正则和扩展正则表达式,grep只支持基础正则
I 在行首插A 在行尾插o 往下插O往上插i 在光标前插a 在光标后插G 跳到末行gg 跳到首行, 11gg 跳到11行光标移动到整个文件头部【gg】光标移动到整个文件尾部【G】8. 点命令【.】含义是重复上次修改,上次修改的单位可以是字符,整行,甚至整个文件。因此如果删除整行【dd】,配合【.】也可以起到重复操作的目的。点命令最大的用处在于,每次从输入模式到命令模式切换时,整个阶段vim会记录每一个按键操作,使用点命令可以重新执行所有的这些按键操作,就好像“一键回放”,我们可以把点命令当成一个宏。比如要给结构体语句添上‘;’号按照常规方法做会比较慢,这时候光标先移动到第一条语句上,【A】【;】【ESC】再反复使用【j】【.】即可。
-qa 查看所有已安装的RPM软件包-ql 查询软件包安装的目录和文件列表-qf 查看软件安装的安装包叫什么名字例:rqm -qf /usr/bin/vim (必须用绝对路径)-q 精确查找安装包是否已经安装了-ivh 安装(-i安装一个新的rpm软件包,-v显示安装过 程 中的详细信息,-h 以“#”显示安装的进度)-e 卸载--nodeps 强制卸载
例:mount /dev/sr0 /media/cdrommount -a 把fstab里写了的没有挂载的全部挂载上umount -a 把fstab里没写的但是已经挂载的全部卸载了mount -o loop ISO镜像文件mount -o rw, remount /
格式 useradd [参数] 用户名-u 指定uid标记号-d 指定宿主目录,缺省默认为/home/用户名-e 指定账号失效时间 -e 30day -e 2019-09-01-M 不为用户建立初始化宿主目录-s 指定用户的登录shell -s /sbin/nologin/-g 指定用户的基本组名(如果指定,必须先创建组)useradd -M -s /sbin/nologin 用户名(创建的是普通用户,但是没有登录权限)
passwd 用户 (给用户设置密码)-d 清空用户的密码-l 锁定用户的账号-S 查看用户账号的状态注:免交互式一次性设置用户的密码:echo “111111” | passwd --stdin yunjisuan
-r 删除用户的同时删除用户的宿主目录
-l 更改用户账号的登录名字-c 修改用户备注-L 锁定用户账号-U 解锁用户账号
id 账号直接输入id 查看账号信息(默认当前用户)
-R 表示以递归的方式设置目录及目录下的所有子目录及文件的权限-u 属主-g 属组
chown 属主 文chown 属组 文件chown 属主:属组 文件
超户原来是0022可以改 例:umask 0011
Mkfs -t ext4 /dev/sdb1 或 mkfs.ext4 /dev/sdb1
df -hT 同上,多显示了文件系统的类型df -hTi 多显示了inode数量
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root 18G 1.1G 16G 7% /
tmpfs 491M 0 491M 0% /dev/shm
/dev/sda1 485M 33M 427M 8% /boot
/dev/sr0 4.2G 4.2G 0 100% /media/cdrom
192.168.200.160:/gs1 20G 301M 19G 2% /mnt
[root@localhost ~]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root ext4 18G 1.1G 16G 7% /
tmpfs tmpfs 491M 0 491M 0% /dev/shm
/dev/sda1 ext4 485M 33M 427M 8% /boot
/dev/sr0 iso9660 4.2G 4.2G 0 100% /media/cdrom
192.168.200.160:/gs1 nfs 20G 301M 19G 2% /mnt
[root@localhost ~]# df -hTi
Filesystem Type Inodes IUsed IFree IUse% Mounted on
/dev/mapper/VolGroup-lv_root ext4 1.1M 27K 1.1M 3% /
tmpfs tmpfs 123K 1 123K 1% /dev/shm
/dev/sda1 ext4 126K 38 125K 1% /boot
/dev/sr0 iso9660 0 0 0 - /media/cdrom
192.168.200.160:/gs1 nfs 1.3M 97 1.3M 1% /mnt
注:启动级别配置文件: /etc/inittabN 3 会出现两个N意思是上一次启动级别为空0 关机1 单用户模式2 没有NFS网络文件系统的多用户模式3表示多用户模式或命令模式4 保留模式5 桌面模式6 重启
-C创建一个新的软RAID-v 显示细节-l 设置RAID的级别-x 指定阵列中的备用磁盘数-D 输出指定RAID设备的详细信息例:mdadm -Cv /dev/md5/ -l5 -n3 -x1 /dev/sd[bcde]mdadm -D /dev/md5 进去看同步率
-i 直接对源文件进行修改例:sed -i ‘s#web#local#g’ /etc/sysconfig/network 如不加-i源文件没有变化-n 取消默认的sed软件的输出,常与sed命令的P连用“a”:追加文本到指定行后,记忆方法:a的全拼是apend,意思是追加。 “i“:插入文本到指定行前,记忆方法:i的全拼是insert,意思是插入。在第十行上一行插入 sed ‘10i xxx’ test在第十行下一行插入 sed ‘10a xxx’ test在第十行到二十行上都插 sed ‘10,20i xxx’ test在第十行到最后一行下都插 sed ‘10,$a xxx’ test在第十行前插xxx sed ‘ 10s#^#xxx#’ test在第十行后插xxx sed ‘10s#$#xxx#’ testsed -r 支持扩展正则sed ‘d’ test 全删sed ‘2d’ test 删第二行sed ‘2,5d’ 删二到五行sed ‘/zhangyang/d’ test 删含有指定内容的行sed ‘/chen/,/wang/d’ 删含有chen 的行到含有wang的行sed ‘3,$d’ 删3到最后一行sed ‘/chen/,3d’ 删含有chen 的行到第三行
service iptables start 启动防火墙服务start 开stop 关restart 重启status 状态reload 平滑重启注:/etc/init.d/ 放的服务的启动脚本,可以tab 出来
-c 进程名 显示指定的进程名所打开的文件-p 进程号 显示指定的进程号所打开的文件-i 通过监听指定的协议,端口和主机等信息,显示符合条件的进程信息 losf -i tcp:22
-a 显示完整信息-u 列出对应用户名-p 列出对应pid号
-d 指定刷新的间隔时间,单位秒-b 以批量处理模式操作,一般与-n同时使用-n 指定循环显示的次数-u 指定用户名-p 指定进程号注:输入top命令按“1”,就可以看到系统的逻辑CPU数输入大写的M是按内存排序,输入大写的P是按CPU排序
-l 显示进程名-U指定特定用户-t 指定终端
ctrl+z 将当前进程挂起,即调入后台并停止执行jobs 查看后台的任务列表,加-l同时显示pid号fg 将后台进程恢复到前台运行,可指定任务程序号bg 将后台暂停的进程调至后台运行
ctrl+c 中断正在执行的命令kill 用于终止指定pid号的进程 -9选项用于强制终止killall 用于终止指定名称的所有进程pkill 根据特定条件终止相应的进程-U 根据进程所属的用户名终止相应的进程-t 根据进程所在的终端终止相应进程
-e 编写定时任务-l 查看当前的定时任务-r 删除定时任务crontab -u 指定看哪个用户的定时任务(不指定默认看当前用户)注:定时任务的日志文件:/var/log/cron定时任务的配置文件:/etc/crontab
(锁定账号文件)超户才能用。一般用于锁定账号的添加锁定 chattr +i 文件解锁 chattr -i 文件查看 lsattr 文件特殊权限注:锁定后超户也不能够修改该文件,即不能创建,删除,修改用户信息,锁定后变成了只读文件
作用:切换用户格式:su - 目标用户格式:su - 用户名 -c 命令 临时切换到该用户执行命令
#有“-”初始化环境变量,无“-”环境变量不改变
[root@ansible ~]# pwd
/root
[root@ansible ~]# su - yunjisuan
Last login: Fri Feb 21 09:20:54 EST 2020 on pts/2
[yunjisuan@ansible ~]$ pwd
/home/yunjisuan #改变了环境变量
[yunjisuan@ansible ~]$ exit
logout
[root@ansible ~]# su yunjisuan
[yunjisuan@ansible root]$ pwd
/root #环境变量未改变
#普通用户切超户需要输入密码
[yunjisuan@ansible root]$ su -
Password:
Last login: Fri Feb 21 09:21:44 EST 2020 on pts/2
# su - 用户名 -c 命令 临时切换到该用户执行命令
[yunjisuan@ansible ~]$ su - root -c ‘ls /root‘
Password:
anaconda-ks.cfg
# sudo -l 查看权限
[yunjisuan@ansible ~]$ sudo -l
User yunjisuan may run the following commands on ansible:
(ALL) NOPASSWD: ALL
-n 按数字升序排列-nr 按数字降序排列-k 指定列数-t 指定分隔符sort -n -k 2 -t: 文件名 指定以:为分隔符的第二列进行升序排列
echo “RANDOM” | cut -c 1-3 取一到三位
echo “$RANDOM” | md5sum 加密md5sum是根据内容加密的,一般用来验证数据的完整性
-c 指定发送数据包的个数-i 当ping通时,指定间隔多少秒发送下一个数据包-w 当ping不通时,指定间隔多少秒发送下一个数据包-s 指定数据包大小
test -d 判断目标是否是目录test -f 判断目标是否是文件test -z 判断目标是否是空文件
-a,--archive归档模式,表示以递归方式传输文件,并保持所有文件属性-v,--verbose详细模式输出,传输时的进度等信息-z,--compress-level=NUM可按级别压缩-P(大)显示同步的过程及传输时的进度等信息--bwlimit=RATE (limit socket I/O bandwidth)限制带宽如:rsync -avz --bwlimit=100 dbfile 192.168.200.33:/backup
ps aux 查看进程所占用的内存和CPU的百分比ps -ef | grep 服务名 通常用来判断某个服务是否处于启动状态-e 显示所有进程-f 额外显示UID,PPID,C和STIME栏位
-a 看所有的网络接口ifconfig 设备名 查看指定的网络接口(不论该网络接口是否处于激活状态)
一般用netstat -antup-a:显示当前主机中所有活动的网络连接信息-n:以数字的形式显示相关信息-t:显示TCP协议相关的信息-u:显示UDP协议相关的信息-p:显示与网络连接相关的进程号,进程名称信息(需要root权限)-r:显示路由表信息
-n:不执行DNS反向查找,直接显示数字形式的IP地址例如:traceroute -n www.baidu.com注:相当于Windows中的tracert -d(-d 不将地址解析成主机名)Windows是在cmd命令提示符里面输入tracert -d www.baidu.com
mysql -u指定用户名-p指定密码-h指定主机-P指定端口
原文:https://www.cnblogs.com/wangerrui/p/12927551.html