积累命令、用户、正则表达式

1  如何保存linux历史命令并显示命令操作时间
      HISTTIMEFORMAT="%F %T"
2  basename命令:     取路径基名
3  dirname命令:      取路径名
4  stat命令:        查看文件状态
    Access最后访问时间(读取)
    Modify内容修改的时间
    Change状态修改时间(属性、权限)
4  help 内部命令列表
5  enable cmd         启用内部命令
6  enable –n cmd       禁用内部命令
7  enable –n          查看所有禁用的内部命令
8  hash          显示hash缓存
              –l 显示hash缓存
              –r 清除缓存
9  date          显示和设置系统时间 (+%F%T)
10 hwclock,clock: 显示硬件时钟
             -s, 以硬件时钟为准
             -w, 以系统时钟为准
11 显示日历:cal  (–y)



输入输出重定向
键盘     stdin     0     标准输入
显示器  stdout   1    标注输出
显示器  stderr   2     标准错误
/dev/null          黑洞、回收站
hexdump -C          转换16进制查看
set -C             禁止将内容覆盖,但可追加
set +C            允许覆盖
.>|             强制覆盖
.>              覆盖式输出
.>>              原有内容基础上追加内容
2>            错误输出
2>>            错误输出追加
&>              把所有输出重定向到文件
&>>              追加式输出所有
ls >>1 2>>2          正确命令输出到1文件 错误输出到2文
(命令1,命令2) >文件1   多个命令都写入文件1中



tr 转换和删除字符
              -s压缩
              -d删除
              -c取字符补集
              -t将第一字符替换为第二字符
例如

tr ‘a-z‘ ‘A-Z‘ < file1 将文件中小写字母都替换成大写字母

tr -d abc < file1 删除file1文件中的所有abc字母

使用文件代替键盘的输入

cat < file1 >> file2 读取file1内容追加到file2中



| 管道符
echo {1..100} | tr ‘ ‘ + | bc
seq 100 seq -s + 100 |bc

用户和组的配置文件
新建用户会默认生成
/etc/passwd            用户信息文件
/etc/shadow            影子文件
/etc/group              组信息文件
/etc/gshadow            组密码文件
/home/              用户家目录
/var/spool/mail            用户邮箱

  • useradd             用户创建命令
         -u 指定UID
         -o 配合-u使用,不检查UID的唯一性
         -g 指定所属组
         -c 用户的注释信息
         -d 指定家目录
         -s 指定默认shell程序
         -G 指定附加组
         -r 创建系统用户
         -m 创建家目录,用于系统用户
         -M 不创建家目录,用于非系统用户

vim /etc/default/useradd      创建用户的默认值设定
usermod              用户属性修改
        -u 新的UID
        -g 新的主组
        -G 新的附加组(配合-a使用,保留原有附加组)
        -s 新的默认SHELL
        -c 新的注释信息
        -L 临时锁定普通用户
        -U 解锁用户
userdel        -r 删除用户
id 查看用户相关的ID信息
         -u 显示UID
         -g 显示GID
         -G 显示附加组
su -         登录式切换用户       su 非登录式切换
passwd  设置密码
        -d 删除指定用户密码
        -l 锁定指定用户
        -u 解锁用户
        -e 强制用户下次登录修改密码
groupadd 创建组
         -g 指定GID
         -r 创建系统组
groupmod 修改组属性
         -n 新名字
         -g 新的GID
groupdel 删除组

cat       -E 显示行结束符$
         -A 显示所有控制符
         -s压缩连续的空行成一行
tac
rev             以字符为单位反序输出    cat /etc/passwd |rev
cut -d -f          抽取指定分隔符和第几个字段
paste file1 file2       合并两个文件
        -d指定分隔符,默认用TAB
        -所有行合成一行显示
wc   收集文本统计数据
        -l 只计数行数
        -w 只计数单词总数
        -c 只计数字节总数
sort   排序命令
        -t指定分隔符
        -k [n,m] 按照指定的字段范围排序
        -n以数值型进行排序
        -r反向排序
        -R随机排序
uniq  -c  统计出现的次数
   -d 取相同的
   -u 取各不相同的
diff -u file1 file2 > file3        比较两个文件然后运算出file3
patch file1 file3            使用patch通过file1和file3可以找回file2(但是找回的时候file2会覆盖file1,所以需要提前先把file1备份)
ss -nt               查看远程连接
grep 文本搜索工具
        --color=auto对匹配到的文本着色显示
        -v 显示不匹配到的行
        -i 忽略大小写
        -n 显示匹配的行号
        -c 统计匹配的行数
        -o 仅显示匹配到的字符串
        -E 使用扩展功能
        -e 使用多个选项间的逻辑关系
        -A 匹配的行加上后几行
        -B 匹配的行加上前几行
        -C 匹配的行加上前后各几行
        -w 匹配整个单词



基本正则表达式
. 匹配任意单个字符
[] 匹配指定范围内的任意单个字符
[^] 匹配指定范围外的任意单个字符
[:alnum:] : 字母和数字
[:alpha:] : 字母
[:digit:] : 数字
[:lower:] : 小写字母
[:upper:] : 大写字母
[:xdigit:] : 六进制字符
[:blank:] : 空格和制表符
[:space:] : 空白字符(水平加垂直比blank广泛)
[:print:] : 可打印的非空白字符
[:punct:] : 标点符号
[:graph:] : 可打印的非空白字符
匹配前面的字符任意次,包括0次(贪婪模式:尽可能长的匹配)
.
任意长度的任意字符
\? 匹配其前面的字符0或1次
\ +匹配其前面的字符至少1次
{n} 匹配前面的字符n次
{m,n} 匹配前面的字符至少m次至多n次
{,n} 匹配前面的字符至多n次
{n,} 匹配前面的字符至少n次
^ 行首锚定
$ 行尾锚定
^$ 空行
\<或\b词首锚定
\>或\b词尾锚定
\< word \> 匹配整个单词
() 分组

原文地址:https://blog.51cto.com/14230743/2364884

时间: 2024-08-11 15:24:17

积累命令、用户、正则表达式的相关文章

grep命令以及正则表达式,算数运算.

最近一段时间一直在学习算术运算和正则表达式以及条件判断,连续看了四五遍,基本概念已经能够搞清楚了,实际操作中容易把正则表达式和算术运算以及条件判断混淆.看来还是要勤加联系.今天终于是有勇气来总结这两周的学习.在这之前,因为在练习这些逻辑概念性的知识经常会用到grep命令.首先介绍一下grep. 格式:grep [options] 'PATTERN' file,... grep: 文本搜索工具,根据用户指定的文本模式对目标文件进行逐行搜索,显示文件中能够被模式所匹配到的行. 模式PATTERN:指

linux 命令grep正则表达式

Linux 命令grep正则表达式 在linux里面有处理文本的三剑,现在我要说的就是grep正则表达式的使用,正则表达式只是一种表示法,只要工具支持这种表示法,那么该工具就可以处理正则表达式的字符串.vi grep ,awk ,sed 等都支持正则表达式..正则表达式有基本正则表达式和扩展正则表达式. grep默认就是基本表达式. 基本正则表达式: 默认匹配次数:贪婪模式,尽可能多的去匹配. 扩展正则表达式:基于基本正则表达式多加了一些功能,基本一样. 1. grep命令 grep [参数]

Linux shell 命令和正则表达式

今天在Fedora20系统上编译VPP项目时遇到了一个问题,在最终编译并且使用rpmbuild生成的rpm安装包不正确,我们需要对生成rpm包的spec文件做一些小的修改. 首先我们来看看VPP自带的生成rpm包的spec描述文件,该文件为${VPP_TOPDIR}/build-root/rpm/vpp.spec, 我们可以打开看看该文件的内容: 其中在%install 段里面有如下的命令 1 # 2 # libraries  3 #  4 mkdir -p -m755 %{buildroot}

Linux_ubuntu命令-用户、权限管理

用户是Unix/Linux系统工作中重要的一环,用户管理包括用户与组账号的管理. 在Unix/Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源拥有不同的使用权限. Unix/Linux系统中的root账号通常用于系统的维护和管理,它对Unix/Linux操作系统的所有部分具有不受限制的访问权限. 在Unix/Linux安装的过程中,系统会自动创建许多用户账号,而这些默认的用户就称为"标准用户". 在大多数版本的Unix/Linux中,都

(转)企业配置sudo命令用户行为日志审计

原文:https://www.cnblogs.com/Csir/p/6403830.html?utm_source=itdadao&utm_medium=referral 第15章 企业配置sudo命令用户行为日志审计 15.1 生产环境企业日志审计解决方案: 所谓日志审计,就是记录所有系统及相关用户行为的信息,并且可以自动分析.处理.展示(包括文本或录像) 下面是各种解决方案 l 通过环境变量命令及rsyslog服务进行所有用户的所有操作的全部日志审计(信息太大,不推荐) l sudo配合rs

rename命令中正则表达式的使用

rename命令用字符串替换的方式批量改变文件名. 格式如下: rename 原字符串  目标字符串  文件(列表) 原字符串:将文件名需要替换的字符串: 目标字符串:将文件名中含有的原字符替换成目标字符串: 文件:指定要改变文件名的文件列表. 举例: 将main1.c重命名为main.c rename main1.c main.c main1.c rename支持通配符 ? 可替代单个字符 * 可替代多个字符 [charset] 可替代charset集中的任意单个字符 举例: 文件夹中有这些文

Linux常用命令-用户,权限管理

ssh:远程登录 ssh [email protected] ssh 用户名@ip (1)whoami:查看当前用户名 whoami该命令用户查看当前系统当前账号的用户名.可通过cat /etc/passwd查看系统用户信息. (2)who:查看登录用户 who:查看当前登录的用户信息 (3)exit:退出登录 如果是图形界面,退出当前终端: 如果是使用ssh远程登录,退出登陆账户: 如果是切换后的登陆用户,退出则返回上一个登陆账号. (4)useradd:添加用户账号 useradd 新的用户

07 grep命令与正则表达式

grep命令 首先我们知道grep命令是用来做文件内容过滤的!如果你要在文件中查找一些对应的内容,我们如何来过滤找到其中我们需要符合条件的内容呢?grep命令结合正则表达式就可以实现: grep.egrep以及fgrep为一组命令,其中grep为命令本身,而grep -e(支持正则表达式),fgrep就是什么都支持(fast grep)在某些条件下实现快速查找:这里我们详细介绍grep命令: grep的使用方式:grep [OPTIONS] PATTERN [FILE...] pattern 模

sed命令和正则表达式

sed命令和正则表达式 sed是一种在线的,非交互式的编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,成为模式空间,接着用sed命令处理缓冲区的内容.处理完,把缓冲区的内容送往屏幕.sed支持正则表达式与grep一样,sed在文件中查找模式时也可以使用正则表达式(RE)和各种元字符.正则表达式是括在斜杠间的模式,>用于查找和替换,以下是sed支持的元字符使用基本元字符集 ^ $ [] [^] \<\> () {} 使用扩展元字符 ?+ {} | () sed命令: