本文共 8203 字,大约阅读时间需要 27 分钟。
1.Linux入门
2.使用帮助3.文件管理4.重定向和管道root用户 超级用户,接近完整的系统控制 除非必要不要登录 # 普通用户 权限有限 $
tty 显示当前终端
接收用户输入的命令送去内核执行,人机交互的语言 echo $SHELL 显示当前的shell的类型 cat /etc/shells 显示当前系统所使用的所有shell
命令提示符prompt [root@localhost~]# echo $PS1 显示当前的提示符格式
PS1=’\[\e[31m\][\u@\h\W]\\$\[\e[0m\] ‘ 改变提示符 {颜色 31m-38m} 输入命令后回车执行命令
shell中可执行的命令 内部命令 enable 显示所有已激活的内部命令 enable command 激活被禁用的内部命令 enable |wc -l 显示激活中的内部命令的数量 enable -a 显示所有内部命令 enable -a |wc -l 显示所有内部命令的数量 enable -n 显示所有被禁用的内部命令 enable -n command 禁用某个内部命令
外部命令 whereis; which -a | -- skip - alias hash 缓存(执行外部命令) hash 显示所有被hash的命令路径 -l 显示所有被hash的命令路径,包含别名 -d 别名 删除指定别名的hash路径 -r 清空所有的hash -t 别名 显示指定别名的hash路径 -p 路径 别名 手工增加一条hash
执行一条命令时的查找顺序 别名→内部命令→外部命令→hash→PATH
type 区别命令类型 type command 显示命令类型
alias 别名 alias 显示所有的别名信息 unalias -a 别名 取消所有别名 /etc/bashrc 对所有用户将别名保存 ~/.bashrc 对当前用户将别名保存
命令执行语法 - 短选项 例如 -p -- 长选项 例如 --help ; 连接符 前一条命令执行结束再执行下一条命令 \ 命令换行符 多个选项以及多参数和命令直接使用空白字符分隔
date时间 date +%Y 年 +%m 月 +%d 日 +%H 小时 +%M 分 +%S 秒 +%w 星期 (0表示星期日) +%A 显示星期全名 +%F 年-月-日 +%T 时:分:秒 date 月日时分年[.秒] 改时间格式 date -s ‘年-月-日 时:分:秒’ 更改时间
hwclock 硬时间 clock 软时间 clock -s 将软时间写入硬时间 关机是自动进行 -w 将硬时间写入软时间 开机时自动进行 cal -y 日历 nano 编辑内容 poweoff/init0 关机 reboot/init 6 重启 shutdown -r 重启 -h 关机 time 指定时间关机 -c 取消关机计划
whoami 显示当前用户名 who an /are/is 任意字符 显示当前的终端信息 who 显示所有终端信息 w 显示所有终端的详细信息及所做的操作
screen 下载
screen -s 会话名 创建指定名的screen会话 -x 会话名 加入已创建的screen会话 -ls 查看所有已打开的screen会话
echo echo $() 或 `` 引用命令执行的结果
echo {} 重复字符的简化形式
echo $(()) 或 $[] 进行运算
echo ${} 或 "$变量名" 划定变量名的起止范围
!n 重复某条历史(此处n为数字)
↑ 重复上一条命令 !string 重复前一个以“string”开头的命令 !?string 重复前一个包含“string”的命令 string 字符串
history的命令 history 查询历史记录 history -c 清空当前的所有历史记录 history -dn 删除某条历史(此处n为数字) history -a 将当前终端新执行的命令写入历史记录文件 (默认为~/.bash_history) history -w /path/filename.txt 将历史记录写入指定文件
调用历史参数 要重新调用前一个命令中最后一个参数: !$ Esc, .(点击Esc键后松开,然后点击 . 键) Alt+ .(按住Alt键的同时点击 . 键)
ctrl + l 清屏 + o 执行当前命令 并重新显示本命令 + s 锁定屏幕 仍可以运行 + q 解锁 + c 强制结束 + z 暂停命令(fg可以再切换回来,bg可以查看当前终端后台有多少暂停的程序) + a 光标起到命令行首 + e 光标移到命令行尾 + u 删除光标之前的内容 + k 删除光标之后的内容 ctrl+shift+c 复制选中的文本 ctrl+shift+v 把文本粘帖到当前光标处 Alt +r 删除全部内容 +N 提示输入指定字符[后输入]后,重复显示该字符N次(N表示具体的数字)
仅能提供命令基本的介绍。不提具体用法。 whatis command 基于数据库的查找 man -f comman 优点:检索速度快 缺点:缺乏实时性 makewhatis 在CentOS6 mandb 在CentOS7
man 统称为Linux手册,常用于命令参考 man cmd 查看此cmd的帮助 q 退出man info 适合通用文档参考 info cmd 查看此cmd的帮助
Linux系统文件区分大小写 元数据 metadata 数据 data
pwd 当前目录路径 pwd -P 当前目录为软链接时,显示其源目录 oldpwd 上一次目录路径 cd 改变目录 cd .. 切换到父目录 cd 切换到当前目录
ls 查看目录 ls -a 显示所有文件 ls -l 长列出 ls -R 递归 ls -ld 显示指定目录的详细信息 ls -1 竖显示 ls -S 按文件大小降序 ls -T 按修改时间从新到旧 ls -u 按访问时间 ls -U 按文件存放的先后顺序 ls -X 按文件后缀排序 ls -i 显示inode号
stat atime 读取文件内容 访问时间 三个时间戳 mtime 改变文件内容 修改时间 ctime 元数据发生改变 改变时间
touch创建文件 touch filename 当文件不存在时,则创建filename 当文件已存在时,则更新全部时间戳 touch -t [YY]MMDDhhmm[.ss] filename touch -a 改变 atime ctime touch -m 改变 mtime ctim touch -c 文件存在更新全部时间,不存在不创建文件
文件通配符 * 匹配零个或多个字符 ? 匹配任何单个字符 * [0-9] [a-z] [A-Z] ^ 托字符 除了 [:upper:] 大写字母 [:lower:] 小写字母 [:alpha:] 大小写字母 [:alnum:] 字母和数字 [:space:] 水平或垂直空白字符 [:blank:] 空格
cp复制 cp A B
cp -i 覆盖前提示 cp -n 不覆盖 注意顺序 cp -r -R 递归 cp -a 归档 cp -d 不复制原文件只复制链 cp -p 复制所有的 cp -v 显示复制的过程 cp -f 有权限 覆盖在创建 mv -i 覆盖前提示 -f 强制覆盖 rm -i 删除前提示 -f 强制删除 -r 删除目录 rename .txt .doc* .txt
tree 显示目录树 -d 只显示目录 -L n 只列出指定层级的目录(此处n为数字) -P通配符 只列出匹配到的文件和所有的目录
mkdir 创建目录 -p 一次性创建多级目录 -v 创建时显示详细信息 -m 创建时直接设置权限 rmdir 删除空目录 -p 一次性删除多级空目录 -v 显示删除的详细信息
128字节 64(类型,权限,链接数,大小,UID,GID,时间,其他信息) 索引节点 cp rm mv
ln filename linkname 不能跨分区 ln -s filename linkname 可以跨分区 源被删除 链接也不可用
file 确定类型,显示文件名 -b 查看文件类型时不显示文件名 -f 列出文件中文件的文件类型 -f /path/filename 文件中每个文件路径一行。从而可批量查看多个文件的类型 -F 符号 按指定符号做为分隔符输出 默认是 : -L 当查询的对象为软链接时,显示源文件的类型 --help 查询在线帮助
指令+数据 Input 读入数据 Output 输出数据 stdin 标准输入 stdout 标准输出 stderr 标准错误
> 正确输出 文件不存在时直接创建新文件 存在时 > 直接覆盖 >> 追加 2>错误输出 &>全部输出 2>&1错误结果转化正确 1>&2 正确的转化错误 ()合并多个程序
tr -c 选取字符集的补集 -d 删除 -s 连续重复的字符以一个字符表示 << EOF >EOF 终止符
| 管道符 使用前加空格 连接命令 cmd1 | cmd2 | cmd3 将正确的结果传递给管道 错误的结果通过 2>&1 ; |& 传递结果 组合多种工具
less 一页一页查看 ls -l /etc | less mail 通过mail发送输出 echo “test mail” | mail -s “test user”
tee -a 追加 command1 |tee [-a] file |command2
转载于:https://blog.51cto.com/13572810/2060839