restorecon
恢复文件的安全上下文
补充说明restorecon命令 用来恢复SELinux文件属性即恢复文件的安全上下文。
语法1restorecon [-iFnrRv] [-e excludedir ] [-o filename ] [-f filename | pathname...]
选项12345678-i:忽略不存在的文件。-f:infilename 文件 infilename 中记录要处理的文件。-e:directory 排除目录。-R/-r:递归处理目录。-n:不改变文件标签。-o/outfilename:保存文件列表到 outfilename,在文件不正确情况下。-v:将过程显示到屏幕上。-F:强制恢复文件安全语境。
实例假设CentOS安装了apache,网页默认的主目录是/var/www/html,我们经常遇到这样的问题,在其他目录中创建了一个网页文件,然后用mv移动到网页默认目录/var/www/html中,但是在浏览器中却打不开这个文件,这很可能是因为这个文件的SELinux配置信息是继承原来那个目录的,与/var/www/html目录不同,使用mv移动的时候,这个SE ...
colrm
删除文件中的指定列
补充说明colrm命令 用于删除文件中的指定列。colrm命令从标准输入设备读取书记,转而输出到标准输出设备。如果不加任何参数,则colrm命令不会过滤任何一行。
语法1colrm(参数)
参数
起始列号:指定要删除的指定列;
结尾列号:指定要删除的结尾列。
chattr
用来改变文件属性
补充说明chattr命令 用来改变文件属性。这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:
语法1chattr(选项)
选项12345678a:让文件或目录仅供附加用途;b:不更新文件或目录的最后存取时间;c:将文件或目录压缩后存放;d:将文件或目录排除在倾倒操作之外;i:不得任意更动文件或目录;s:保密性删除文件或目录;S:即时更新文件或目录;u:预防意外删除。
123456-R:递归处理,将指令目录下的所有文件及子目录一并处理;-v<版本编号>:设置文件或目录版本;-V:显示指令执行过程;+<属性>:开启文件或目录的该项属性;-<属性>:关闭文件或目录的该项属性;=<属性>:指定文件或目录的该项属性。
实例用chattr命令防止系统中某个关键文件被修改:
1chattr +i /etc/fstab
然后试一下rm、mv、rename等命令操作于该文件,都是得到Operation not permitted的结果。
让某个文件只能往里面追加内容,不能删除,一些日志文件适用于这 ...
tempfile
shell中给临时文件命名
补充说明有时候在写Shell脚本的时候需要一些临时存储数据的才做,最适合存储临时文件数据的位置就是/tmp,因为该目录中所有的内容在系统重启后就会被清空。下面是两种方法为临时数据生成标准的文件名。
tempfile命令tempfile命令只有在基于Debian的发行版中才默认自带,比如Ubuntu,其他发行版没有这个命令。
用tempfile命令为一个临时文件命名:
1temp_file_name=$(tempfile)
用一个加带了随机数的文件名作为临时文件命名:
1temp_file_name="/tmp/file_$RANDOM"
$RANDOM是一个返回随机数的环境变量。
$$变量如果没有tempfile命令的Linux发行版,也可以使用自己的临时文件名:
1temp_file_name="/tmp/file.$"
$$是系统预定义变量,显示当前所在进程的进程号,用.$$作为添加的后缀会被扩展成当前运行脚本的进程id。
top
显示或管理执行中的程序
补充说明top命令 可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具。通过top命令所提供的互动式界面,用热键可以管理。
语法1top(选项)
选项1234567891011-b:以批处理模式操作;-c:显示完整的治命令;-d:屏幕刷新间隔时间;-I:忽略失效过程;-s:保密模式;-S:累积模式;-i<时间>:设置间隔时间;-u<用户名>:指定用户名;-p<进程号>:指定进程;-n<次数>:循环显示的次数;-H:所有线程占用资源情况。
top交互命令在top命令执行过程中可以使用的一些交互命令。这些命令都是单字母的,如果在命令行中使用了-s选项, 其中一些命令可能会被屏蔽。
1234567891011121314151617h:显示帮助画面,给出一些简短的命令总结说明;k:终止一个进程;i:忽略闲置和僵死进程,这是一个开关式命令;q:退出程序;r:重新安排一个进程的优先级别;S:切换到累计模式;s:改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成ms。输入0 ...
pssh
批量管理执行
补充说明pssh命令 是一个python编写可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具中很出色的,类似pdsh,个人认为相对pdsh更为简便,使用必须在各个服务器上配置好密钥认证访问。
安装pssh在CentOS系统环境下,介绍yum的安装和源码安装的方式:
yum方法
1yum install pssh
编译安装
1234wget http://parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gztar xf pssh-2.3.1.tar.gzcd pssh-2.3.1/python setup.py install
选项12345678910111213141516--version:查看版本--help:查看帮助,即此信息-h:主机文件列表,内容格式”[user@]host[:port]”-H:主机字符串,内容格式”[user@]host[:port]”-:登录使用的用户名-p:并发的线程数【可选】-o:输出的文件目录【可选】-e:错误输入文件【可选】-t:TIMEOUT 超时时间设置 ...
lprm
删除打印队列中的打印任务
补充说明lprm命令 用于删除打印队列中的打印任务。尚未完成的打印机任务会被放在打印机贮列之中,这个命令可用来将常未送到打印机的任务取消。
语法1lprm(选项)(参数)
选项123-E:与打印服务器连接时强制使用加密;-P:指定接受打印任务的目标打印机;-U:指定可选的用户名。
参数打印任务:指定需删除的打印任务号。
实例将打印机hpprint中的第102号任务移除:
1lprm -Phpprint 102
将第101号任务由预设打印机中移除:
1lprm 101
batch
在系统不繁忙的时候执行定时任务
补充说明batch命令 用于在指定时间,当系统不繁忙时执行任务,用法与at相似。
语法1batch(选项)(参数)
选项123-f:指定包含具体指令的任务文件;-q:指定新任务的队列名称;-m:任务执行完后向用户发送E-mail。
参数日期时间:指定任务执行的日期时间。
实例1234batch at> echo 1234at> <EOT>job 5 at Sun Apr 28 08:49:00 2013
tput
通过terminfo数据库对终端会话进行初始化和操作
补充说明tput命令 将通过 terminfo 数据库对您的终端会话进行初始化和操作。通过使用 tput,您可以更改几项终端功能,如移动或更改光标、更改文本属性,以及清除终端屏幕的特定区域。
什么是 terminfo 数据库?UNIX 系统上的 terminfo 数据库用于定义终端和打印机的属性及功能,包括各设备(例如,终端和打印机)的行数和列数以及要发送至该设备的文本的属性。UNIX 中的几个常用程序都依赖 terminfo 数据库提供这些属性以及许多其他内容,其中包括 vi 和 emacs 编辑器以及 curses 和 man 程序。
与 UNIX 中的大多数命令一样,tput 命令既可以用在 shell 命令行中也可以用在 shell 脚本中。为让您更好地理解 tput,本文首先从命令行讲起,然后紧接着讲述 shell 脚本示例。
光标属性
在 UNIX shell 脚本中或在命令行中,移动光标或更改光标属性可能是非常有用的。有些情况下,您可能需要输入敏感信息(如密码),或在屏幕上两个不同的区域输入信息。在此类情况下,使用 ...
mount
用于挂载Linux系统外的文件
补充说明mount命令 Linux mount命令是经常会使用到的命令,它用于挂载Linux系统外的文件。
如果通过webdav协议挂载网络磁盘,需要运行指令apt install davfs2安装必要的组件
语法1234mount [-hV]mount -a [-fFnrsvw] [-t vfstype]mount [-fnrsvw] [-o options [,...]] device | dirmount [-fnrsvw] [-t vfstype] [-o options] device dir
选项123456789101112131415161718192021222324-V:显示程序版本-h:显示辅助讯息-v:显示较讯息,通常和 -f 用来除错。-a:将 /etc/fstab 中定义的所有档案系统挂上。-F:这个命令通常和 -a 一起使用,它会为每一个 mount 的动作产生一个行程负责执行。在系统需要挂上大量 NFS 档案系统时可以加快挂上的动作。-f:通常用在除错的用途。它会使 mount 并不执行实际挂上的动作,而是模拟整个挂上的 ...