150个
1.mkdir make directory 创建目录
例子:mkdir /data表示在根下创建data目录。
参数:-p 递归创建
2.cd change directorys 切换目录
例子:cd /表示进入根目录。
3.ls list 列表目录
例子:ls /etc
参数:-l(long)长格式显示目录或文件属性。
-d(directory),表示查看目录
4.touch 创建文件或更改文件时间戳
例子:touch /data
5.pwd print work dirtorys 打印工作目录(路径)
例子:pwd
6.vi 记事本 (简单,功能少)
7.vim 编辑器 (复杂,功能比较多)
8.cat 查看文件内容(编辑、追加)
例子:cat oldboy.txt
cat >>/data/test.txt<<EOF
I am studying linux.
EOF
9.echo 是一个打印输出内容的东西
(printf 让数据显示更规范更,美观)
例子:echo 'I am study linux.'
echo '
1111
2222
3333
'>>test.txt
echo -e 'I am study linux\nI am study linux' >>b.txt
10.cp copy 拷贝文件或目录(默认只能拷贝文件)
格式:cp 源 目的地
例如: cp /data/test.txt /tmp
参数:-r 递归拷贝
-a 拷贝全部(包括属性)
-p 保持属性
-d 复制链接文件
区别:
cp /data/ /tmp 理论上是目录下的内容,不包含目录data本身
cp /data /tmp 理论上目录级下面的内容,包含目录data本身
实际上 cp 、mv 源/data/ 和 /data 一样,如果目标/tmp不存在,则把/data改为/tmp
11.mv move 移动文件或目录(也有改名的功能)
格式:mv 源 目的地
例如:mv /data/test.txt /tmp
12.rm remove 删除文件或目录
慎用,危险,初学者一定用mv,find代替rm,在linux中是没有回收站的,当空间不允许的时候想删,就先备份。
格式:rm 文件、目录
例如:rm /data/test.txt(默认只能删文件)
参数:-f 强制删除
-r递归删除(删目录)
13.rmdir 删除空目录,现在基本很少用
14.find 查找文件或某
格式:find 范围
参数:-type 类型
d(directory) 目录
f (file)文件
-name 名字
-exec 行动
-mtime 时间 +7、-7、=7
-o 或者 (并集)
!取反
-a 并且 (交集)
例如:find / -type f -name "*.txt" (在根目录下查找名字以txt结尾的文件)
find / -type d -name "*" (在根目录下查找所有目录)
find / -type f -name "*.txt" -exec rm {} \;(在/下查找名字以txt结尾的文件,删除)
find / -type f -name "*.txt" -mtime +7 -exec rm {} \;(在/下查找名字以txt结尾的文件修改时间为7天前的,删除)
find / -type f -name "*.txt" -exec cp {} /tmp \;(在根目录下查找名字以txt结尾的文件,拷贝到/tmp下)
find / -type f -name "*.txt" -exec cp {} /tmp \;
cp ‘find / -type f -name "*.txt" -exec cp {} /tmp’ 这两条命令是等价的
15.xargs 从标准输入获取内容创建和执行命令
参数:-n 分组
-i 在 cp、mv、echo的时候用
例如:find /data -type f -name "*.txt"|xargs -n 6 (将查找到的文件分组)
find /data -type f -name "*.txt"|xargs rm -f(删除查找到的文件)
find /data -type f -name "*.txt"|xargs -i mv {} /tmp(移动查找到的文件到/tmp下)
16.grep 擅长过滤(筛子)linux三剑客的老三
参数:-v 排除
-A(after) 后n行
-B (before)前n行
-C (context)前n和后n行
-i 不区分大小写
-E 支持多个筛选
例如:grep“oldboy” test.txt
grep -v“oldboy” test.txt
grep 20 -A 10 ett.txt
grep 30 -B 10 ett.txt
grep "25" -C 5 ett.txt
17.head 头,头部 显示文件的前n行内容,默认前10行
参数:-n 后面接数字,表示第n行
例如:head -2 /etc/passwd (n可以省略)
18.tail 尾,尾部 显示文件的后n行内容,默认后10行
参数:-n 后面接数字,表示第n行
例如:tail -2 /etc/passwd (n可以省略)
19.seq 序列
参数:-s 指定分隔符
-w 补全数位
例如:seq 10(排列1-10)
seq 1 2 10(排列1-10,公差为2)
20.tree 查看目录结构
如果显示乱码,则LANG=en 调整字符集,en英文 zh中文
21.alias 查看和设置别名
作用:给危险命令加保护参数
格式:alias 命令="想修改的内容"
(可以是命令,也可以是字符串)
例如:alias rm='echo "this command does not allow to use."'
22.unalias 取消别名
格式:unalias + 命令
例如:unalias rm
23.sed 擅长取行,替换,linux三剑客的老二
参数:-n 取消默认输出
-i 插入
-e 多项编辑
功能: p 打印
# 是分隔符
g 全部替换
s 查找并替换
d 删除
例如:sed -n '20.30p' ett.txt
sed 's#oldgirl#gongli#g' a.txt
sed 's#oldgirl#gongli#1' a.txt
sed '/oldboy/p' ett.txt 过滤(查)
sed '/oldboy/d' ett.txt 删除(删)
sed -i 's#oldgirl#oldboy#g' `find /oldboy -type f -name "*.sh"`
find . -type f -name "*.sh" | xargs sed -i.bak 's#oldboy#oldgirl#g' (先备份,再修改)
24.awk 擅长取列,linux三剑客的老大
参数:NR 行号
&& 并且
$0 整行内容
\n 回车
-F 指定分隔符
例如:awk '{if(NR<31 && NR>19) printf $0"\n"}' ett.txt
awk 'NR>19&&NR<31' ett.txt
awk 'NR==20,NR==30' ett.txt
25.yum 软件包管理工具
26.useradd 添加用户
例子:useradd test
27.passwd 设置和修改密码
例如:passed test
如果直接输入passwd,修改当前用户密码
echo "123456"|passwd --stdin test 直接修改密码,非交互式
28.su 角色切换
例如:su - test(一定要加-)
切换用户时出现以下情况:
-bash-4.1$ 原因是,环境变量删了
解决方法:cp -a /etc/skel/.bash* .
29.whoami 查看当前用户
30.man 查看帮助
例如:man cp
31.help 查看bash内置命令的帮助
例如:help cd
32.uname 打印系统信息
参数:-m 查看多少位 例如:uname -m
-r 查看内核版本信息 例如:uname -r
-a 查看所有信息 例如:uname -a -n 查看主机名 例如:uname -n
33.hostname 查看或设置主机名
例如:hostname 显示oldboy 就是主机名
hostname = uname -n
34.id 打印用户和组的信息
=====================================================================================================================
相对路径和绝对路径
windows绝对路径:E:\2016-老男孩-常用运维工具,从头开始的路径。
linux绝对路径:cat /etc/sysconfig/network-scripts/ifcfg-eth0,从/开始的路径。
相对路径:cat etc/sysconfig/network-scripts/ifcfg-eth0不从/开,不从头开始的路径。
特殊符号:
> 或 1> 输出重定向,把前面的东西输入到后面的文件中,会清除文件原有的内容。
>> 或 1>> 追加输出重定向,把前面的东西输入到后面的文件尾部,不会清除文件原有内容。
< 或 0< 输入重定向, 例子:xargs -n 2 <b.txt
<< 或 0<< 追加输入重定向,
2> 错误重定向,
2>> 错误追加重定向,
说明:
1.剪头的指向就是数据的流向。
2.数字说明:
a.标准输入(stdin):代码0,使用<或<<数据流向从右向左
b.正常输出(stdout):代码1,使用>或>>,数据流向从左向右。
echo oldboy >a.txt 2>&1 = echo oldboy >a.txt 2>&1
c.错误输出(stderr):代码2,使用2>或2>>,数据流向从左向右。
cho oldboy 2>a.txt 1>b.txt
| 管道符 ,把前面的结果交给后面的命令处理,处理内容。
.. 当前工作目录的上一级目录。
~ 当前用户家目录
{} 1.序列 2.find,xargs 可以内容文件作为处理结果
!1.调出最近操作命令 2.find,xargs中取反 3.vim中 例如:q! wq! 之类的是强制操作
- 上一次所在的目录(由oldpwd控制)
快捷键:
Tab键:命令补全
Ctrl+c:终止当前任务,命令或程序
Ctrl+d:退出当前用户环境
Ctrl+l:清屏(clear)
Ctrl+shift+c:在CRT里面复制命令
Ctrl+shift+v:在CRT里面粘贴命令(shift+Insert)
Ctrl+a:光标到开头
Ctrl+e:光标到结尾
Ctrl+u:清除当前光标前面的命令
Ctrl+k:清除当前光标后面的命令
Ctrl+w:清除光标前一个单词或字符串,以空格分割
Ctrl+r: 命令行查找
本文出自 “good cook” 博客,转载请与作者联系!