1:文件管理 – Linux常用命令大全(手册) https://linuxcommand.p2hp.com 真正好用的Linux命令在线查询网站 Fri, 10 Jun 2022 07:14:26 +0000 zh-CN hourly 1 https://wordpress.org/?v=6.0.2 https://linuxcommand.p2hp.com/wp-content/uploads/2019/03/cropped-redhat-32x32.png 1:文件管理 – Linux常用命令大全(手册) https://linuxcommand.p2hp.com 32 32 vim命令 – 文本编辑器 https://linuxcommand.p2hp.com/vim Sun, 08 May 2022 08:40:55 +0000 https://linuxcommand.p2hp.com/?p=9352 vim命令的功能是用于编辑文本内容,是Linux系统字符界面下最常用的文本编辑工具,能够编辑任何的ASCII格式文件,对内容进行创建、查找、替换、修改、删除、复制、粘贴等操作。编写文件时,无需担心目标文件是否存在,若不存在则会自动在内存中创建,随保存操作输出到硬盘中。

由于vi/vim编辑器深入学习的难度较大,无法通过单一词条为读者讲透,如想熟练使用请参阅《Linux就该这么学》第四章4.1小节

语法格式:vim [参数] 文件

常用参数:

-s静默模式
— -cmd<命令>加载任何vimrc文件之前执行指定命令
-R只读模式
-vVi模式
-eEx模式
-y简易模式
-c<命令>加载第一个文件之后执行指定命令
-s<脚本输入文件>从指定脚本输入文件阅读普通模式命令
-w<脚本输出文件>追加所有类型的命令写入脚本输出文件
-W<脚本输出文件>写入所有类型的命令到指定脚本输出文件
+<行数>从指定行开始
— -noplugin不要加载插件脚本
-p<数量>打开指定数量的标签页(带文件名)
-r<文件名>恢复崩溃的会话
-L等同于-r
-r列出交换文件并退出
-u<vimrc>熟用指定vimrc,而不是.vimrc
-T<终端>设置使用指定终端
-o<数量>打开指定数量的窗口
-n不使用交换文件,只用内存
-Z受限模式
-m不允许修改(写入)
-b二进制模式
-M在文本中不允许修改

参考实例

创建某个文件,并进行编写操作:

[root@linuxcool ~]# vim anaconda-ks.cfg

打开某个已存在的文件,从第6行开始编写:

[root@linuxcool ~]# vim +6 anaconda-ks.cfg

打开某个已存在的文件,以只读模式进入:

[root@linuxcool ~]# vim +R anaconda-ks.cfg
]]>
keytool命令 – 密钥和证书管理工具 https://linuxcommand.p2hp.com/keytool Tue, 22 Sep 2020 09:29:16 +0000 https://linuxcommand.p2hp.com/?p=8675 keytool命令的功能是用于管理密钥和证书文件。密钥就是用于加解密用的文件或字符串,可以使用keytool命令进行生成、导入和删除等操作,不同的程序需要的密钥格式也不尽相同,需要留意具体的格式。

语法格式:keytool 参数

常用参数:

-certreq生成证书请求
-changealias更改条目的别名
-delete删除条目
-exportcert导出证书
-genkeypait生成密钥对
-genseckey生成密钥
-gencert根据证书请求生成证书
-importcert导入证书或证书链
-importkeystore从其他密钥库导入一个或所有条目
-keystore证书保存位置
-keyalg 指定加密算法
-keypasswd更改条目的密钥口令
-list列出密钥库中的条目
-printcert打印证书内容
-printcertreq打印证书请求的内容
-printcrl打印CRL文件的内容
-storepasswd更改密钥库的存储口令

参考实例

生成一个指定名称的证书文件,加密类型为RSA,有效期365天:

[root@linuxcool ~]# keytool -genkey -alias tomcat -keyalg RSA -keystore /etc/tomcat.keystore -validity 365

导入一个指定名称的证书文件,定义别名名称:

[root@linuxcool ~]# keytool -import -keystore cacerts -storepass 666666 -keypass 888888 -alias linuxcool -file /etc/tomcat.keystore

删除一个指定名称的证书:

[root@linuxcool ~]# keytool -delete -alias linuxcool -keystore cacerts -storepass 666666
]]>
rndc-confgen命令 – 密钥生成工具 https://linuxcommand.p2hp.com/rndc-confgen Tue, 22 Sep 2020 09:29:16 +0000 https://linuxcommand.p2hp.com/?p=8682 rndc-confgen命令的作用是可以为rndc生成配置文件。

rndc命令通过TCP连接与DNS服务器通信,发送使用数字签名认证的命令。在rndc命令和named守护进程的当前版本中,唯一支持的认证算法是HMAC-MD5,它在连接的每一端使用共享密钥。这为命令请求和DNS服务器响应提供了TSIG-style认证。所有的经通道发送的命令必须由服务器认识的key_id标记。rndc命令会读取配置文件以确定如何与DNS服务器联系必须使用何种算法。

语法格式:rndc-confgen [参数]

常用参数:

-t<目录>指定一个运行chroot目录,rndc.key文件的副本将被写入到该目录中
-s<IP地址>为来自rndc的命令通道连接指定监听的IP地址。默认值是环回地址127.0.0.1
-c<密钥文件>指定备用位置的rndc.key密钥文件
-b<密钥大小>指定密钥的大小,单位是位。必须介于1和512位之间,默认值是128
-p<端口>为来自rndc的连接指定监听的命令通道端口。默认值是953
-u<用户>设置生成的rndc.key密钥文件的所有者
-r<随机文件>指定用于生成授权随机数据源
-k<密钥名称>指定rndc认证密钥的密钥名称
-a自动rndc配置,创建密钥文件/etc/rndc.key

参考实例

为rndc生成配置文件/etc/rndc.conf:

[root@linuxcool ~]# pwdhash -c linuxcool linux

自动rndc配置,创建密钥文件/etc/rndc.key:

[root@linuxcool ~]# rndc-confgen -a

更新key文件:

[root@linuxcool ~]# rndc-confgen
]]>
umount.nfs命令 – 卸载NFS文件系统 https://linuxcommand.p2hp.com/umount-nfs Tue, 22 Sep 2020 09:29:16 +0000 https://linuxcommand.p2hp.com/?p=8689 umount.nfs命令的作用是卸载NFS文件系统。

NFS全称为Network File System。即网络文件系统,它允许网络中的计算机之间共享资源,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

语法格式:umount.nfs [本地目录] [参数]

-f在无法访问NFS系统的情况下强制卸载文件系统
-n不更新/etc/mtab文件
-v显示详细信息
-r在卸载失败的情况下,尝试只读挂载

参考实例

挂载NFS服务器192.168.60.102的共享目录/it:

[root@linuxcool ~]# umount.nfs4 /mnt/it

强制卸载文件系统:

[root@linuxcool ~]# umount.nfs4 /mnt/it -f

尝试只读挂载:

[root@linuxcool ~]# umount.nfs4 /mnt/it -r
]]>
createdb命令 – 创建PostgreSQL数据库 https://linuxcommand.p2hp.com/createdb Tue, 22 Sep 2020 09:29:16 +0000 https://linuxcommand.p2hp.com/?p=8691 createdb命令的作用是可以创建一个PostgreSQL数据库。

PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统(RDBMS)。 PostgreSQL数据库支持灵活的权限管理,可以控制一个角色(组、用户)对某张表的读、写、更新、删除等操作权限、执行某个函数的权限以及操作(使用、更新等)视图、序列的权限。

通常,执行这个命令的数据库用户成为新数据库的所有者。 不过,如果执行用户拥有合适的权限,那么他可以通过 -O指定合适的用户。createdb是一个SQL命令 CREATE DATABASE的封装。

语法格式:createdb [参数] [数据库] [描述]

常用参数:

-D<表空间>数据库默认表空间
-e显示发送到服务端的命令
-O<所有者>新数据库的所属用户
-E<编码>指定数据库编码
-h<主机名>数据库服务器的主机名
-p<端口>数据库服务器端口号
-U<用户>连接的用户名
-w永远不提示输入口令
-W强制提示输入口令
-T<模版数据库>指定要复制的数据库模版

参考实例

创建数据库linuxcool:

[root@linuxcool ~]# su -postgres
$ createdb  linuxcool

主机192.168.60.163上的服务器创建数据库linuxcool,端口是5888:

[root@linuxcool ~]# createdb -p 5888 -h 192.168.60.163 linuxcool

以数据库linuxcool为模版复制创建数据库db1:

[root@linuxcool ~]# su -postgres
$ createdb db1 -T linuxcool
]]>
vacuumdb命令 – 清理并优化PostgreSQL数据库 https://linuxcommand.p2hp.com/vacuumdb Tue, 22 Sep 2020 09:29:16 +0000 https://linuxcommand.p2hp.com/?p=8693 vacuumdb命令的作用是可以清理并优化一个PostgreSQL数据库。

vacuumdb命令也将产生由PostgreSQL查询优化器所使用的内部统计信息。

vacuumdb命令是SQL命令VACUUM的一个包装器。在通过这个工具和其他方法访问服务器来清理和分析数据库之间没有实质性的区别。虽然在新版本的PostgreSQL中有自动的vacuum,但是如果是大批量的数据IO可能会导致自动执行很慢,需要配合手动执行以及自己的脚本来清理数据库。

语法格式:vacuumdb [参数] [数据库名]

-a清理所有的数据库
-d<数据库名称>清理指定的数据库
-e显示发送到服务端的命令
-f完全清理
-F冻结记录的事务信息
-q不写任何信息
-t<表名>只清理指定的表
-U<用户名>指定连接的用户名
-w永远不提示输入口令
-W强制提示输入口令
-h<主机名>数据库服务器所在主机的主机名或套接字目录
-p<端口号>指定数据库服务器端口号
-z更新优化器信息
-v输出大量的信息

参考实例

清理所有的数据库:

[root@linuxcool ~]# su - postgres
$ vacuumdb -a

为优化器清理和分析一个名为bigdb的数据库:

[root@linuxcool ~]# su - postgres
$ vacuumdb -z bigdb

清理数据库linuxcool中的table1表:

[root@linuxcool ~]# su - postgres
$ vacuumdb -d linuxcool -t 'table1'
]]>
beadm命令 – 管理 ZFS 引导环境 https://linuxcommand.p2hp.com/beadm Mon, 14 Sep 2020 08:58:27 +0000 https://linuxcommand.p2hp.com/?p=8728 beadm命令是管理ZFS启动环境(BEs)的用户界面。此实用程序供希望在一个系统上管理多个 Oracle Solaris 实例的系统管理员使用。用户通过使用BeFmris确定要管理的BE。

语法格式:beadm [参数]

常用参数:

create创建新的引导环境
destroy销毁引导环境
list列出引导环境信息
mount挂载引导环境
unmount卸载引导环境
rename修改引导环境名称

参考实例

创建新的引导环境:

[root@linuxcool ~]# beadm create linuxcool

销毁上面创建的引导环境:

[root@linuxcool ~]# beadm destroy linuxcool

列出所有引导环境信息:

[root@linuxcool ~]# beadm list

挂载引导环境:

[root@linuxcool ~]# beadm mount linuxcool

]]>
xxd命令 – 以十六进制形式表示 https://linuxcommand.p2hp.com/xxd Fri, 28 Aug 2020 05:32:56 +0000 https://linuxcommand.p2hp.com/?p=7060 xxd的作用就是将一个文件以十六进制的形式显示出来。它还可以将十六进制转储转换回其原始二进制形式。

语法格式:xxd [参数]

常用参数:

-a它的作用是自动跳过空白内容,默认是关闭的
-c它的后面加上数字表示每行显示多少字节的十六进制数,默认是16字节
-g设定以几个字节为一块,默认为2字节
-l显示多少字节的内容
-s后面接【+-】和address.加号表示从地址处开始的内容,减号表示距末尾address开始的内容

参考实例

使用-a参数,自动跳过空白,从0x200开始,输入文件:

[root@linuxcool ~]# xxd -a -s +0x200 linuxcool.txt

使用-a、-c参数,自动跳过空白,每行显示12字节,从0x200开始,输入文件:

[root@linuxcool ~]# xxd -a -c 12 -s +0x200 linuxcool.txt

使用-a、-c、-g参数,自动跳过空白,每行显示12字节,一个字节一块,显示512字节内容,从0x200开始,输入文件:

[root@linuxcool ~]# xxd -a -c 12 -g 1 -l 512 -s +0x200 linuxcool.txt
]]>
xwininfo命令 – 窗口信息实用程序 https://linuxcommand.p2hp.com/xwininfo Fri, 28 Aug 2020 05:32:56 +0000 https://linuxcommand.p2hp.com/?p=7066 xwininfo是一个显示windows信息的实用程序,根据选择的选项,将显示各种信息。如果未选择任何选项,则假定为-stats。

语法格式:xwininfo [参数]

常用参数:

-int此选项指定所有X窗口ID都应显示为整数值,默认设置是将它们显示为十六进制值。

参考实例

使用xwininfo命令显示窗口信息实用程序:

[root@linuxcool ~]# xwininfo
]]>
ntpq命令 – 查询NTP时间服务器信息 https://linuxcommand.p2hp.com/ntpq Fri, 28 Aug 2020 05:16:27 +0000 https://linuxcommand.p2hp.com/?p=8520 ntpq命令来自于英文词组“NTP query”的缩写,其功能是用于查询NTP时间服务器信息。

语法格式:ntpq [参数]

常用参数:

-4使用ipv4解析
-6使用ipv6解析
-c [command]添加执行的命令到指定主机的命令列表
-d打开调试模式
-i使用交互模式
-n以十进制格式显示主机地址
-p显示服务器同级设备的列表

参考实例

查看服务器同级设备列表:

[root@linuxcool ~]# ntpq -p

显示内核相关信息:

[root@linuxcool ~]# ntpq -c kerninfo

要求用户输入密码进行验证:

[root@linuxcool ~]# ntpq -c passwd

以十进制格式显示主机地址:

[root@linuxcool ~]# ntpq -pn
]]>