一、命令杂项

2024-01-14  本文已影响0人  离港时的灯塔

1、在/etc/profile.d下面的脚本在开机的时候回自动执行,但必须以.sh结尾

2、enable 命令查看内部命令shell内部的命令
    enable -n   ls    禁用内部命令的ls功能
    enable   ls        启用禁用的命令

3、PS1变量为颜色控制变量,可以修改字体和背景的颜色
    PS1='[\e[1;33m\]\u@\h \W]\$'        字体为黄色

4、获取帮助
help命令可以查看所有的内部命令的帮助
前面带*的为禁用的内部命令
whatis    依赖whatis数据库,刚完成系统安装是没有的,会自行安装,也可以输入命令打开
centos 6 makewhatis
centos7 mandb

5、查看信息
which 列出命令路径
        --skip-alias  取消命令的别名
tree列出文件列表
pstree查看进程树      安装  yum -y install psmisc
lshw查看硬件信息
lspci 查看pci接口上的硬件信息
hexdump   查看二进制文件的信息信息     hexdump -c | -C 查看详细信息,可以用于查看分区的数据内容,hexdump -c -n 512   /dev/sda
xxd  文件名     功能类似hexdump
uname -m  CPU类型   uname -r    内核版本

6、bc命令使用   内部计算器
可以通过命令行进行计算
输入二进制   ibase=2
输出二进制   obase=2
退出进制转换   exit
退出计算器     quit
可以采用通道的方式进行计算       echo   1+2 | bc

7、hash命令,列出所有缓存的命令路径,执行命令就能看到所有的缓存路径
hash -d  hostname    删除hostname 命令的缓存路径
hash  -r    删除全部

8、alias为命令别名
alias  new=‘old name’
如果出现别名和命令冲突,可以用'cmd'方式进行执行,或者输入绝对路径
unalias   -a    取消所有别名
命令前面加\就是取消别名的命令

9、ntpdate ip
netdate   172.16.0.1
clock  硬件系统时间,修改硬件系统时间  clock -w
cal -y   显示日历
date   显示系统时间
timedatectl    时间设定    timedatectl  set-tinezone   Asia/Shanghai   修改时区 
localect 语言设定,其实就是LANG变量配置   localectl list-locales   列出所有语言

10、获取帮助
man 帮助   1、用户命令   2、系统调用   3、C库调用   4、设备文件及特殊格式   5、配置文件格式
6、游戏   7、杂项   8、管理类命令   9、linux内核API
whatis 命令可以查看帮助中的章节都有哪一些
man  [1-9]  cmd
/etc/share/doc   每安装一个命令或者包都会生成一份对应的文件夹,用来存储帮助文档
info  cmd   获取info格式的帮助指令 内容贼详细,就是太多了

11、/etc/issue 打印用户登录前信息,写上啥就打印啥
/etc/motd     打印用户登录前信息,写上啥就
/etc/locale.conf    为LANG变量配置文件   LANG=”zh_CN.UTF-8”   支持汉字
安装中文的man帮助yum install man-pages-zh-CN.noarch

12、关机命令
shutdown -h   n     n分钟后关闭计算机  shutdown -c    取消设定的关机

13、虚拟窗口命令
screen     开启一个新的虚拟窗口,用于进行长时间的命令,不会因为ssh断开而出问题
screen -ls    列出已经打开的虚拟窗口,会列出pid,通过关闭pid就可以停止screen
screen -S   name    为虚拟屏幕设定名称
screen -x   name   加入到name的指定的屏幕中,一般用于相互帮助中
exit  退出当前的screen 
screen -r   name   恢复指定的screen
ctrl +a +d   剥离当前screen 

14、快捷键
ctrl + u  删除贯标处到行手
ctrl + k  删除光标处到行尾
Alt + r   删除正好
ctrl +xx   行首和行尾切换
ctrl + e  移动至行尾
ctrl + a 移动至行首
alt + f 向右移动一个单词尾部
alt + b 向左移动一个单词头部

15、df、du命令
du -sh   /dir     查看指定目录的磁盘占用量
df  -i    查看inode节点的利用率

16、 lsblk   查看系统已经安装的块设    备

17、/etc/DIR_COLORS   这个文件是关于文件类型和颜色的对应配置文件

18、basename    只要路径中的文件名字
        dirname      只要路径中的路径名称

19、ls的和stat的使用
ll --time=atime    列出文件读时间  显示的是文件中的数据最后被访问的时间
ll --time=mtime    修改时间        显示的是文件内容被修改的最后时间
ll --time=ctime    状态修改时间    显示的是文件的权限、拥有者、所属的组、链接数发生改变时的时间
stat列出更详细的内容,包含以上的三个时间

20、通配符
*  匹配零个或多个字符
? 匹配单个字符
~ 当前用户家目录
~fu   用户fu的家目录
~+ 当前工作目录
~-前一个工作目录
[0-9]  匹配数字范围
[a-z] 匹配字母或者大写的也行
[wang] 匹配列表中任何一个字符
[^wang]匹配列表中所有字符以外的字符

21、cp命令
cp -b   目标存在可以做出备份文件,在文件名后面增加~
cp -a   复制全部内容,包括所有者和时间戳
cp -u   只复制更新的文件和没有存在的文件
--preserv   声明部分设置需要复制,比如属主信息等   ownership   属主属组

22、当一个文件删除后所占用的磁盘空间没有施放,可以通过重定向的方式
rm只是将文件链接解除,如果此时有进程打开文件,系统是不会回收文件。
>   文件名   这样文件对磁盘的占用就会消失,然后再删除即可

23、批量文件名修改
rename    .log   .log.bak *

24、ln
硬连接不能用于目录文件,不能夸分区
软连接可以用于夸文件系统
每个目录文件有三个连接数,其中有一个是自己目录中的  .  还有一个是其中子目录下面的 . .  

25、set命令
set -C   关闭覆盖功能
set +C  打开覆盖功能

26、多行重定向
cat   << EOF
后面的字母随便定义就行,只要输入这个字母就会结束,,这个字母前后不能带任何空格
> 输出重定向
1 > file   正确输出
2 > file   错误输出
& > file   正确和错误输出
> file   2>&1   正确输出和错误输出放到一起   

27、tr命令    将输入的字符进行替换
tr  ‘ ’  +   将内容中的空格转换为+号

28、CentOS7 单元用户模式
在grub引导向后面添加   init=/bin/bash 
登录成功后重新挂载文件系统为读写   mount -o rw,remount  /

29、 用于linux系统之间拷贝文件采用的
scp  srcfile   user@ip:/path

30、time 命令执行的时间
time    命令
radl   全部时间
user   用户空空间时间
sys     内核占用的时间

31、查看socket连接状态
ss   -nt
或者   cat   /proc/net/tcp
-l:  listening         【ss -l列出所有打开的网络连接端口】
-s:  summary        【显示 Sockets 摘要】
-r:  resolve        【解析服务名称】
-m: memory        【显示内存情况】

32、查看指定命令所需要的安装的包
yum provides 查找提供指定内容的软件包
rpm   -pf   命令路径     查看已经安装的命令是属于哪个安装包的

33、修改内核参数
sysctl   -a     显示所有可以更改的内核参数
sysctl   net.ipv4.ip_forward=1        修改内核转发参数,使其使能
/etc/sysctl.conf      这是sysctl的配置文件,写入的内容可以开机的时候自动执行修改内核参数
           net.ipv4.ip_forward=1      在配置文件中直接这么写就行     
sysctl   -p     重读配置文件

34、启用系统scsi总线扫描    用于不显示刚刚增加的硬盘
echo '- - - '  > /sys/class/scsi_host_host2/scan

35、二进制文件读写命令dd
dd   if=/dev/sda(输入文件或者设备)        of=/data/data(输出文件)            bs=1 (块数)       count=64(一个块大小)     skip=446(跳过输入设备的钱446个字节数)|seek=446(跳过输出设备前446个字节)

36、生成UUID值
uuidgen    命令

37、fuser命令
    用于报告进程使用的文件和网络套接字
    fuser   -v    /mnt     查看那个用户在使用/mnt这个目录
    fuser   -km    /mnt      杀死所有的使用/mnt这个目录的用户

38、W命令
 w命令用于显示目前登入系统的用户信息。
执行这项指令可得知目前登入系统的用户有哪些人,以及他们正在执行的程序。
单独执行 w 指令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息

39、dmseg命令
显示开机信息,kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息亦保存在/var/log目录中,名称为dmesg的文件里。

40、命令有很多子命令,如果不出现tab键进行补全的话,需要安装bash-completion 软件包

41、定时计划任务设置
yum install crontabs
systemctl enable crond (设为开机启动)
systemctl start crond(启动crond服务)
systemctl status crond (查看状态)

vi /etc/crontab
可以看到:
Example of job definition:
.---------------- minute (0 - 59) 分钟
| .------------- hour (0 - 23) 小时
| | .---------- day of month (1 - 31) 日
| | | .------- month (1 - 12) OR jan,feb,mar,apr ... 月
| | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat  周
| | | | |
* * * * * user-name command to be executed
*/30 * * * root /usr/local/mycommand.sh (每天,每30分钟执行一次 mycommand命令)
* 3 * * * root /usr/local/mycommand.sh (每天凌晨三点,执行命令脚本,PS:这里由于第一个的分钟没有设置,那么就会每天凌晨3点的每分钟都执行一次命令)
0 3 * * * root /usr/local/mycommand.sh (这样就是每天凌晨三点整执行一次命令脚本)
*/10 11-13 * * * root /usr/local/mycommand.sh (每天11点到13点之间,每10分钟执行一次命令脚本,这一种用法也很常用)
10-30 * * * * root /usr/local/mycommand.sh (每小时的10-30分钟,每分钟执行一次命令脚本,共执行20次)
10,30 * * * * * root /usr/local/mycommand.sh (每小时的10,30分钟,分别执行一次命令脚本,共执行2次)
加载任务,使之生效:crontab /etc/crontab
查看任务:crontab -l
$ crontab -u 用户名 -l (列出用户的定时任务列表)

42、查看系统相信信息配置文件
cat   /etc/os-release

43、tab键自动补全命令
安装完成后默认是不提供tab自动补全命令的,只能补全当前目录下的文件,需要安装额外的工具包
yum install bash-completion

44、xargs命令
xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据。
将上一个命令的输出作为下一个命令的参数
docker    ps -a -q  | xargs  docker rm 

45、curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具
curl    ip:port     可以测试http下载

46、whereis命令
特定目录中查找符合条件的文件,搜索命令查看命令以及命令的配置文件的时候用的
-b  只查找二进制文件
-m  只查找说明文件。
-M<目录>  只在设置的目录下查找说明文件。
-s  只查找原始代码文件。
-S<目录>  只在设置的目录下查找原始代码文件。
-u  查找不包含指定类型的文件。

上一篇 下一篇

猜你喜欢

热点阅读