命令详细 第二周 (混乱版) 初学者自用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了命令详细 第二周 (混乱版) 初学者自用相关的知识,希望对你有一定的参考价值。

tail命令
用语输入文件中的尾部内同,tail命令默认在屏幕上显示指定文件的末尾10行。 如果给定的文件不止一个,则在显示每个文件前面加一个文件名标题。如果没有指定文件或者文件名为“-”,则读取标准输入。
-c<N>或——bytes=<N>:输出文件尾部的N(N为整数)个字节内容
-n<N>或——line=<N>:输出文件的尾部N(N位数字)行内容。
-q或——quiet或——silent:当有多个文件参数时,不输出各个文件名;
-s<秒数>或——sleep-interal=<秒数>:与“-f”选项连用,指定监视文件变化时间隔的秒数;
-v或——verbose:当有多个文件参数时,总是输出各个文件名;
用法
tail 文件
显示文件的最后十行

history命令
用于显示指定数目的指令命令 读取历史文件中的目录到历史命令缓冲区和将历史命令缓冲区写入命令文件
-c:清空当前历史命令;
-a:将历史命令缓冲区中命令写入历史命令文件中;
-r:将历史命令文件中的命令读入当前历史命令缓冲区;
-w:将当前历史命令缓冲区命令写入历史命令文件中。
用法:
[localhost.localdomain 09:59:15 /]#history 10
684 rm -rf /data/
685 ls
686 mkdir data
687 cp -avr /root/.* /data/
688 ls
689 ll -a /data/
显示最近的十条命令

touch命令
1.用于吧已存在文件的时间表情更新为系统当前时间(默认方式)
源数据不动
2.用来创建新的空文件
-a:或--time=atime或--time=access或--time=use 只更改存取时间;
-c:或--no-create 不建立任何文件;
-d:<时间日期> 使用指定的日期时间,而非现在的时间;
-f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题;
-m:或--time=mtime或--time=modify 只更该变动时间;
-r:<参考文件或目录> 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同;
-t:<日期时间> 使用指定的日期时间,而非现在的时间;
用法
touch xxx
在当前目录下创建 xxx

stat命令
用于显示文件的状态信息,该命令输出的信息比ls命令输出的要更详细
-L:支持符号连接;
-f:显示文件系统状态而非文件状态;
-t:以简洁方式输出信息;
用法:
[localhost.localdomain 10:12:31 /data]#stat run/
File: ‘run/’
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 803h/2051d Inode: 19100499 Links: 38
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:var_run_t:s0
Access: 2018-07-24 09:35:57.491126840 +0800
Modify: 2018-07-24 08:42:03.795000868 +0800
Change: 2018-07-24 09:42:29.588142115 +0800
Birth: -
Access :文件最近一次被访问的时间
Modifu: 文件内容最近一次被修改的时间
Change:文件属性最近一次被改变的时间

script scriptreplay命令
录制并回放 (没有声音)
cript -t 2>time.file -a output.file
开始录制
exit
结束录制
scriptreplay time.file output.file
录制回放

driname 打印目录或者文件的基本名
basename 取出文件中非目录的部分
区别是
[localhost.localdomain 10:32:43 /data]#dirname /etc/dhcp/dhclient
/etc/dhcp
[localhost.localdomain 10:40:37 /data]#basename /etc/dhcp/dhclient
dhclient

tr 命令
可以对来自标准输入的字符进行替换 压缩和删除
-c或——complerment:取代所有不属于第一字符集的字符;
-d或——delete:删除所有属于第一字符集的字符;
-s或--squeeze-repeats:把连续重复的字符以单独一个字符表示;
-t或--truncate-set1:先删除第一字符集较第二字符集多出的字符
[:alnum:]:字母和数字
[:alpha:]:字母
[:cntrl:]:控制(非打印)字符
[:digit:]:数字
[:graph:]:图形字符
[:lower:]:小写字母
[:print:]:可打印字符
[:punct:]:标点符号
[:space:]:空白字符
[:upper:]:大写字母
[:xdigit:]:十六进制字符

tee命令
用于将数据重定向到文件,
-a:向文件中重定向时使用追加模式;
-i:忽略中断(interrupt)信号。
不过现在好像都用 >进行重定向等

tree命令
用于 以树状图列数目录内容
-a:显示所有文件
-d:先是目录名称而非内容;
-D:列出文件或目录的更改时间;
-f:在每个文件或目录之前,显示完整的相对路径名称;
-g:列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码;
-i:不以阶梯状列出文件和目录名称;
-l:<范本样式> 不显示符号范本样式的文件或目录名称;
-l:如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录;
-n:不在文件和目录清单加上色彩;
-N:直接列出文件和目录名称,包括控制字符;
-p:列出权限标示;
-s:列出文件和目录大小;
-t:用文件和目录的更改时间排序;
-u:列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码;
-x:将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该目录予以排除在寻找范围外。

pwconv ,pwunconv 命令
pwconv命令用来开启用户的投影密码 inux系统里的用户和群组密码,分别存放在名称为passwd和group的文件中, 这两个文件位于/etc目录下。因系统运作所需,任何人都得以读取它们,造成安全上的破绽。投影密码将文件内的密码改存在/etc目录下的shadow和gshadow文件内,只允许系统管理者读取,同时把原密码置换为"x"字符,有效的强化了系统的安全性。
而pwunconv是用来关闭用户投影密码的,它会把密码从shadow文件内,重回存到passwd文件里。

finger命令
用于查找并显示用户信息。包括本地与远端主机的用户
单独执行finger指令,他会显示本地主机现在所有的用户登陆信息

-l:列出该用户的帐号名称,真实姓名,用户专属目录,登入所用的Shell,登入时间,转信地址,电子邮件状态,还有计划文件和方案文件内容;
-m:排除查找用户的真实姓名;
-s:列出该用户的帐号名称,真实姓名,登入终端机,闲置时间,登入时间以及地址和电话;
-p:列出该用户的帐号名称,真实姓名,用户专属目录,登入所用的Shell,登入时间,转信地址,电子邮件状态,但不显示该用户的计划文件和方案文件内容。

rename命令
用字符串的方式批量改变文件名。并且支持通配符
?可替代单个字符

  • 可替代多个字符
    [charset] 可替代charset集中的任意单个字符
    用法
    rename a a0 a? 吧当前文件夹中开头带a 且后面只带了单个字符的文件 会被替换成a0x(x是源文件后面的那个单个字符)
    a1 会被替换成a01

shred命令
是一条终端命令,功能是重复覆盖文件,如果想彻底的清理linux 的某些文件可以使用这条命令
-f 必要时修改权限使目标可写
-n 覆盖X此
-u 覆盖之后并删除文件
-v 显示详细文件
-x 不将文件大小增加值最近接快的大小

df命令 显示磁盘分区上可使用的磁盘空间 默认显示为kn,可利用该命令来获取硬盘被占用了多少空间。还剩多少等
-a 显示包含全部的文件系统
-h 以较高的可读性进行显示信息(比如G就是G MB就是MB)
-i 显示inode (节点的信息)

passwd 命令
用于设置用户的认证信息,包括用户密码,密码过期时间等。系统管理员则能用他管理系统用户的密码,只有管理者可以指定用户名称,一般用户只能改变自己的密码
-d:删除密码,仅有系统管理者才能使用;
-f:强制执行;
-k:设置只有在密码过期失效后,方能更新;
-l:锁住密码;
-s:列出密码的相关信息,仅有系统管理者才能使用;
-u:解开已上锁的帐号。
-e: 快速终止账户密码的使用期限,让用户在下一次登陆的时候需要进行更改密码
--stdin 直接读取

useradd命令
用语linux中创建的新的系统用户,之后用户的信息会保存在/set/passwd
-c:在备注上加入文字
-e<有效期限>:指定帐号的有效期限;
-f<缓冲天数>:指定在密码过期后多少天即关闭该帐号;
-g<群组>:指定用户所属的群组;
-G<群组>:指定用户所属的附加群组;
-s<shell>:指定用户登入后所使用的shell;
-u<uid>:指定用户id。
-r 创建系统用户
-d:指定用户的家目录
用法:
useradd XXX;
创建用户
如果想在创建用户的时候在在添加别的直接;就好比如在创建用户的时候添加备注信息
useradd xxx -c "xxxxxx"

usermod 命令
用于修改用户的基本信息,但是并不会允许更改现在正在使用的账号名称。
-c<备注>:修改用户帐号的备注文字;
-d<登入目录>:修改用户登入时的目录;
-e<有效期限>:修改帐号的有效期限;
-f<缓冲天数>:修改在密码过期后多少天即关闭该帐号;
-g<群组>:修改用户所属的群组;
-G<群组>;修改用户所属的附加群组;
-l<帐号名称>:修改用户帐号名称;
-L:锁定用户密码,使密码无效;
-s<shell>:修改用户登入后所使用的shell;
-u<uid>:修改用户ID;
-U:解除密码锁定。

userdel命令
用于删除给定的用户,以及与用户相关的文件,若不加选项则仅仅删除用户账号,不会删除相关文件
-f 强制删除用户,即便是用户现在是登陆状态
注意:如果强制删除登陆状态的用户。当前用户并不会掉线,只有用户断线后才会真正的删除
-r:删除用户的同时,删除与用户相关的所有文件

groupadd命令 ***
用户创建一个新的工作组
-g:指定新建工作组的id;
-r:创建系统工作组

groupdel命令 **
用语删除指定的工作组。本命令要修改的系统文件包括/ect/group和/ect/gshadaw.如果组里有用户 请先删除组内的用户在删除组

groupmod命令
更改族群识别码名称等
-g :;修改ID
groupmod -g 1500 test

-o:重复使用群组识别码;
-n: 修改组名

groupmems 命令
修改和查看组成员 只有root用户才能使用这个命令去管理改变其他组的成员
-a :在组成员中添加用户名
-d:删除组成员用户
-p:清除所有成员
-l:列出所有组成员

gpasswd命令
管理/etc/group 和etc/gshadow管理工具
-a:添加用户到组;
-d:从组删除用户;
-r:删除密码
-A:设定管理用户列表

newgrp命令
能够临时的将当前登陆的用户更改为指定的组 有效期限仅是当前这次登陆。
同时需要时组里有指定更换的用户才能进行操作
当前登陆的用户和想要更改的指定用户组要同一组的

chage命令
用来修改账号和密码的有效期限
-m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M:密码保持有效的最大天数。
-w:用户密码到期前,提前收到警告信息的天数。
-E:帐号到期的日期。过了这天,此帐号将不可用。
-d:上一次更改的日期。
-i:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
-l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。

chsh命令
用来更换登陆系统时使用的shell,若不指定任何参数与用户名称则 chsh会以应答的方式进行设置
-s<shell 名称>或--shell<shell 名称>:更改系统预设的shell环境。;
-l或--list-shells:列出目前系统可用的shell清单;

chfn
用来改变finger命令显示的信息
-f<真实姓名>或--full-name<真实姓名>:设置真实姓名;
-h<家中电话>或--home-phone<家中电话>:设置家中的电话号码;
-o<办公地址>或--office<办公地址>:设置办公室的地址;
-p<办公电话>或--office-phone<办公电话>:设置办公室的电话号码;

finger
用于查找并显示用户信息,包括本地与远端主机的用户,账户名称没有打大小写
-l:列出该用户的帐号名称,真实姓名,用户专属目录,登入所用的Shell,登入时间,转信地址,电子邮件状态,还有计划文件和方案文件内容;
-m:排除查找用户的真实姓名;
-s:列出该用户的帐号名称,真实姓名,登入终端机,闲置时间,登入时间以及地址和电话;
-p:列出该用户的帐号名称,真实姓名,用户专属目录,登入所用的Shell,登入时间,转信地址,电子邮件状态,但不显示该用户的计划文件和方案文件内容。

chmod命令 ****
用来变更文件或目录的权限,
u User,即文件或目录的拥有者;
g Group,即文件或目录的所属群组;
o Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围;
a All,即全部的用户,包含拥有者,所属群组以及其他用户;
r 读取权限,数字代号为“4”;
w 写入权限,数字代号为“2”;
x 执行或切换权限,数字代号为“1”;

  • 不具任何权限,数字代号为“0”;
    s 特殊功能说明:变更文件或目录的权限。

-c或——changes:效果类似“-v”参数,但仅回报更改的部分;
-f或--quiet或——silent:不显示错误信息;
-R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理;

chown ****
改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组
-c或——changes:效果类似“-v”参数,但仅回报更改的部分;
-f或--quite或——silent:不显示错误信息;
-h或--no-dereference:只对符号连接的文件作修改,而不更改其他任何相关文件;
-R或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理;
-v或——version:显示指令执行过程;
例:
修改当前文件的是所有者和所属组
chown mage.mage test.txt

chgrp **
用来修改文件或者目录的所属用户组。该命令用来改变指定文件所属的用户组。其中,组名可以是用户组的id,也可以是用户组的组名。文件名可以 是由空格分开的要改变属组的文件列表,也可以是由通配符描述的文件集合

-c或——changes:效果类似“-v”参数,但仅回报更改的部分;
-f或--quiet或——silent:不显示错误信息;
-h或--no-dereference:只对符号连接的文件作修改,而不是该其他任何相关文件;
-R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理;
-v或——verbose:显示指令执行过程;

umask
用来设置限制新建文件权限。当新文件被创建,其最初的权限由文件创建掩码决定。用户每次注册进入系统时,umask命令都被执行, 并自动设置掩码mode来限制新文件的权限。用户可以通过再次执行umask命令来改变默认值,新的权限将会把旧的覆盖掉。
-p:输出的权限掩码可直接作为指令来执行;
-S:以符号方式输出权限掩码。

getfacl
setfacl
这俩命令都属于ACL access control List 主要目的提供传统权限之外的具体权限设置
getfacl 取得某个文件/目录的acl设置
setfacl 设置某个文件/目录的acl设置

setfacl 参数
-m:设置后续acl参数
-x:删除后续acl参数
-b:删除全部的acl参数
-k:删除默认的acl参数
-R:递归设置acl,包括子目录
-d:设置默认acl

setfacl -m u:wang :rw file

getfacl
-a, --access 仅显示文件访问控制列表
-d, --default 仅显示默认的访问控制列表
-c, --omit-header 不显示注释表头
-e, --all-effective 显示所有的有效权限
-E, --no-effective 显示无效权限
-s, --skip-base 跳过只有基条目(base entries)的文件
-R, --recursive 递归显示子目录
-L, --logical 逻辑遍历(跟随符号链接)
-P, --physical 物理遍历(不跟随符号链接)
-t, --tabular 使用制表符分隔的输出格式
-n, --numeric 显示数字的用户/组标识
-p, --absolute-names 不去除路径前的 ‘/‘ 符号

chattr
用来改变文件属性,查看和改变文件、目录属性的,与chmod这个命令相比,chmod只是改变文件的读写、执行权限,更底层的属性控制是由chattr来改变的。

通过chattr命令修改属性能够提高系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录

a:让文件或目录仅供附加用途;
b:不更新文件或目录的最后存取时间;
c:将文件或目录压缩后存放;
d:将文件或目录排除在倾倒操作之外;
i:不得任意更动文件或目录;
s:保密性删除文件或目录;
S:即时更新文件或目录;
u:预防意外删除。

选项:
-R:递归处理,将指令目录下的所有文件及子目录一并处理;
-v<版本编号>:设置文件或目录版本;
-V:显示指令执行过程;
+<属性>:开启文件或目录的该项属性;
-<属性>:关闭文件或目录的该项属性;
=<属性>:指定文件或目录的该项属性。
用法例如:
用chattr命令防止系统中某个关键文件被修改:

chattr +i /etc/fstab

lsatte
lsattr命令是显示chattr命令设置的文件属性。

pwck命令
用来验证系统认证文件 /etc/passwd和/etc/shadow的内容和格式的完整性
-q:仅报告错误信息;
-s:以用户id排序文件“/etc/passwd”和“/etc/shadow”;
-r:只读方式运行指令。

grpck命令
用于验证组文件的完整性,在验证之前,需要先锁定组文件/etc/group和/etc/shadow

grpck命令检查数据是否正确存放,每条记录是否都包含足够的信息,是否有一个唯一的组名,是否包含正确的用户,是否正确设置了组的管理员等。grpck检查发现错误以后,在命令行提示用户是否删除错误的记录。如果用户没有明确回答删除记录,grpck终止运行。

-r:只读模式;
-s:排序组id。
并且此命令需要用root用户

pwconv
pwunconv
pwconv命令用来开启用户的投影密码,投影密码将文件内的密码改存在/etc目录下的shadow和gshadow文件内,只允许系统管理者读取,同时把原密码置换为"x"字符,有效的强化了系统的安全性。
pwunconv命令与pwconv功能相反,用来关闭用户的投影密码。它会把密码从shadow文件内,重回存到passwd文件里。

newusers
用于 批量处理的方式一次创建多个命令
用法:
用户名1:x:UID:GID:用户说明:用户的家目录:所用SHELL

chpasswd
批量更新用户口令的工具。
-e:输入的密码是加密后的密文;
-h:显示帮助信息并退出;
-m:当被支持的密码未被加密时,使用MD5加密代替DES加密。

su
用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。
-c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份;
-f或——fast:适用于csh与tsch,使shell不用去读取启动文件;
-l或——login:改变身份时,也同时变更工作目录,以及HOME,SHELL,USER,logname。此外,也会变更PATH变量;
-m,-p或--preserve-environment:变更身份时,不要变更环境变量;
-s<shell>或--shell=<shell>:指定要执行的shell;
用法
su -c ls root

less
用于浏览文字档案的内容。用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页
-e:文件内容显示完毕后,自动退出;
-f:强制显示文件;
-g:不加亮显示搜索到的所有关键词,仅显示当前显示的关键字,以提高显示速度;
-l:搜索时忽略大小写的差异;
-N:每一行行首显示行号;
-s:将连续多个空行压缩成一行显示;
-S:在单行显示较长的内容,而不换行显示;
-x<数字>:将TAB字符显示为指定个数的空格字符。

mkdir命令
用来创建目录。该命令创建由dirname命名的目录。如果在目录名的前面没有加任何路径名,则在当前目录下创建由dirname指定的目录;如果给出了一个已经存在的路径,将会在该目录下创建一个指定的目录。在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。

-m 创建文件夹时 同时修改文件权限""
mkdir -m 700 /home/mage/test

以上是关于命令详细 第二周 (混乱版) 初学者自用的主要内容,如果未能解决你的问题,请参考以下文章

fstab文件 详细 (初学者自用)

VIM 基础 初学者自用

“” ‘‘ ``区别 初学者自用

大数据初学者必备的详细版学习路线图

大数据初学者必备的详细版学习路线图

剑指offer第二版和专项突击版有啥区别