总结一下一些常用到的Linux命令:
1). man - format and display the on-line manual pages
man命令的分段机制: 1:用户命令: 2:系统调用 3:库调用 4:设备文件 5:文件格式(通常为配置文件的格式定义) 6:游戏 7:杂项 8:管理命令 man -M /path/to/mandoc Command # 指定帮助手册查找路径 man -k 'string' # 按指定关键字查找命令
2). date - print or set the system date and time
date [+FORMAT] %Y:四位年份 %y:两位年份 %m:月 %M:分钟 %d:日 %h:英文简写的月 %H:时 %S:秒 %D:月/日/年 %F:年-月-日 %T:时:分:秒 date MMDDhhmm[[CC]YY][.ss] # 修改当前系统时钟为 月日小时分钟[年.秒] date +%F# 显示日期格式为年-月-日 date +%F-%H-%M-%S # 显示日期格式为年-月-日-小时-分钟-秒 date +%s # 从1970年1月1日0点0分0秒(unix元年)到现在所经过的秒数,timestamp(时间戳)
3). hwclock - query and set the hardware clock (RTC)
硬件时钟:主板上的电池供电进而保存的硬件时钟 软件时钟:开机时读取硬件时钟 hwclock -s # 以硬件时钟为准,将硬件时钟同步到系统时钟,即改系统时钟 hwclock -w# 以系统时钟为准,将系统时钟同步到硬件时钟,即改硬件时钟
4). mkdir - make directories
mkdir -pv {a,b}_{c,d} # 创建四个目录 a_b, a_c, b_c, b_d
5). history - Display or manipulate the history list
!## 执行命令历史中的第#条命令 !!# 执行上一条命令 !-## 执行命令历史中的倒数第#条命令 !$# 引用上一条命令最后的参数,另两种方式:(1)ESC,. # ESC键按完之后再按. (2)ALT+. #按住ALT,再按. !string# 执行命令历史中最近一条以string开头的命令 history -c # 清空命令历史 history -d ## 删除命令历史中第#条命令 history -a # 追加当前会话的命令历史至命令历史文件中 history -n# 从命令历史文件中读取命令历史记录到命令行 history -w# 将命令行命令历史记录保存至命令历史文件中 (.bash_history) 命令历史相关的环境变量 HISTSIZE:命令历史中可以保存的个数 HISTFILE: 命令历史保存的文件 HISTFILESIZE:命令历史文件中可以保存的命令个数 HISTCONTROL:控制命令历史的生成机制 ignoredups:忽略记录重复的命令,连续的相同命令才叫重复 ignorespace:忽略以空格开头的命令 ignoreboth:同时具有上面两种特性
6). ls - list directory contents
-rw-r--r-- 1 root root 208 Jul 6 13:41 id_rsa_1024.pub 文件类型 权限 硬链接数 属主 属组 文件大小 最近一次的修改时间 文件名 -a:显示所有文件,包含隐藏文件 -A:显示所有文件,包含隐藏文件,但不现实.和.. --color:显示颜色 -l:长格式显示 -d:显示目录自身的属性,通常与-l同时使用 -r:实现逆序显示 -R:递归显示 -i:inode号,index node -h:文件大小以人类易读格式显示,即做单位转换
7). cat - concatenate files and print on the standard output
-A 显示文件当中所有隐藏符号 -E --show-ends 显示结束符$ -e:等于-vE -v:显示非打印符 -n:显示每行按顺序编号 -s:将多个连续的空白行合并显示一个空白行
8). echo - display a line of text
-e \b:删除前面的字符 \t:制表符 \v:垂直制表符 \n:换行符 \0NNN() 开始\033[# # 1 3前景色 颜色(1-7) 4背景色 结束\033[0m echo -e "\033[31mhello\033[0m,world" -n:不为显示内容自动换行
9). cp - copy files and directories
-r:递归复制,复制目录时加此选项 -i:interactive,提示,交互 -f:强制覆盖 -a: -pdr 保留所有的文件信息 -d:当源为连接文件时,复制链接文件本身,而非指向的源文件 -p:保持原有属性
10). touch - change file timestamps
-a:仅修改访问时间 -c:不创建空文件,只修改时间戳 -m:仅修改修改时间 -t:指定时间戳 touch -a -t [[CC]YY]MMDDhhmm[.ss] file_name # 仅修改访问时间 无论是atime还是mtime变了,ctime都会变
11). useradd - create a new user or update default new user information
-u UID:指定UID -g GID:指定GID,即用户的基本组,但GID要事先存在 -G GID:指定用户的额外组,但GID要事先存在 -c comment:备注 -d directory: 指定家目录 -s:shell:指定默认shell,应该指定使用/etc/shells文件中出现的shell -m:创建用户时,强制给用户创建家目录 -M:创建用户时,但不创建家目录 -D: 改变其默认属性 -r: 创建系统用户 特点:id 1-499 不会为用户创建家目录 默认shell为/sbin/nologin
12). usermod - modify a user account
-u UID: 修改UID -g GID:修改GID -G GID:默认会覆盖原有的附加组,如果要是添加,可以同时使用-a选项 -c string:修改注释信息,多个的话则以,分割 -d new home 默认不会迁移用户的家目录,如果要迁移,同时使用-m选项 -s SHELL:修改默认shell -l New_login_name:修改用户登录名称 -e:修改过期期限 -f:修改非活动期限 -L:锁定用户账号,即被锁定的账户不能登陆系统 -U:解锁用户账号
13). passwd - update user’s authentication tokens
-n:设置密码最小使用期限 -x:设置密码最长使用期限 -w:设置密码警告期限 -i:设置密码非活动期 -d:删除密码,仅有系统管理者才能使用 -f:强制执行 -k:设置只有在密码过期失效后,方能更新 -l:锁住账户密码 -u:解锁账户密码 -s:列出密码的相关信息,仅有系统管理者才能使用
14). wc - print newline, word, and byte counts for each file
-l:统计行数 -w:统计单词数 -c:统计字节数
15). sort - sort lines of text files
-f:忽略大小写 -n:对数字进行排序 -t:指定分隔符 -k数字:指定分隔后进行比较字段 -u:重复的行,只显示一行
16). uniq - report or omit repeated lines
-c:统计每一行出现的次数(靠着的行) -d:仅显示出现最少两次的行