您的位置:首页 > 运维架构 > Shell

linux目录及文件管理, bash重定向

2016-08-19 17:06 267 查看
linux文件类型:
f,d,l,c,b,p,s,

查看文件类型: file
文件的三个时间戳:
atime

mtime: 数据内容改变

ctime: 元数据改变

查看时间戳: stat

别名的定义:(命令行定义的别名,其生效范围为当前会话;编辑配置文件则可长久有效)
alias ALIAS=COMMAND 如 #alias cls=clear

unalias [ALIAS]

-a 撤消所有别名

命令引用:

bash支持的引用:

''
""

`` 如 # touch file-`date +%H-%M-%S`.txt 则创建了一个以当前时间

为名字的文件。

$()更为常用,易读性更强

文件名通配:globbing
*: 匹配任意长度的任意字符(空格也算;任意长度则说明无字符也算,如ls *ab
则将ab, xab等都列出来)

?: 单个任意字符(空格也算)

[]: 匹配指定范围内的任意单字符
[a-z],[0-9],[0-9a-z]

[^]: 匹配指定范围以外的任意单字符

[^0-9a-z]

字符集合:

[:sapce:]:空白字符

[:punct:]:所有标点符号

[:lower:]:所有小写字母

[:upper:]

[:digit:]

[:alnum:]:数字和字母

[:alpha:]: 所有的大小字母

echo命令
echo [-neE] [arg ...]

\n

\t

\033[

单个数字:控制字体

3#:#是数字,3表示控制其前景色

4#:#是数字,4表示控制其背景色

组合使用,彼此间使用;分隔

m: 是固定格式

\033[0m: 控制符的功能至此结束

文件管理类命令
cp:copy复制

cp SRC DEST

cp SRC... DEST SRC不止一个,DEST则必须存在且为目录

cp 默认不能复制目录,可加-r参数来实现复制目录 recursive

-i: interactive

-f: force
mv:move移动

mv SRC... DEST

-i: interractive

rm: remove 删除

-r: recursive

-f: force

-i:

--no-presever-root: 删根时加的长参数

文本编辑命令: nano
ctrl+o: 保存

ctrl+x: 退出

文本处理命令: wc
wc /etc/inittab 显示行数,单词数,字节数

-l: line 行数

-w: word 单词数

-c: characters

cut: 切隔 cut -d: -f1,7 /etc/passwd

-d:指定分隔符

-f:指定要显示的字段

m:第m列

m,n:第m和n列

m-n: 第m到第n列

sort: 对文本进行排序 sort -t: -k3 /etc/passwd 以冒号分隔,对第3个字段进行排序比较

-f: 忽略字符大小写

-t: 指定分隔符

-k: 指定分隔之后要进行排序比较的字段

-u: 排序后去重

uniq:

-d: duplicate 仅显示重复的行

-u: 仅显示未曾重复过的行

-c: 统计行出现的次数

应用题:取出/etc/passwd文件中第7个用户的用户名:

# head -n 7 /etc/passwd | tail -n 1 | cut -d: -f 1

统计/etc目录下以大小写p开头的文件的个数:

# ls -d /etc/[pP]* | wc -l

文件系统
标准输入 0 键盘

标准输出 1 显示器

错误输出 2 显示器

重定向:

标准输出重定向:

COMMAND > POSITION: 覆盖输出

COMMAND >> POSITION:追加输出

错误重定向:

COMMAND 2> POSITION

COMMAND 2>> POSITION

合并重定向:

COMMAND &> POSITION 合并覆盖重定向

COMMAND &>> POSITION 合并追加重定向

分别重定向:
COMMAND > POSITION 2> POSITION2

输入重定向

如文本处理命令不带参数

tr 'SET1' 'SET2'
-d: 删除指定字符集合中的所有字符

<< Here Document 结束 如: cat << END

多道输出:

COMMAND | tee POSITION
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息