inux 中创建空文件的四种方式:
方式 1: echo > a.txt(有一个字节)
方式 2: touch b.txt
方式 3: cat > c.txt 按 ctrl+c 组合键退出; 或 Ctrl+d
方式 4: vi d.txt 进入之后: wq 退出。
15、显示文件内容的前几行 head –n 行数值 文件名 文件的后几行 tail –n 行数值 文件名 eg: Head –n 10 main.cc
16、在bash里面的常用快捷键有:Ctrl+a 到行首 Ctrl+e到行尾 Ctrl+r查找上一次的输入
17、管道与命令替换
管道: 是重定向的一种, 就像一个导管一样, 将一个程序或命令的输出作为另一个程序或命令的输入。 eg:ls –l ./etc | wc –w (注wc(Word Count)) wc [选项]文件… -c 统计字节数。 -l 统计行数。 -m 统计字符数。这个标志不能与 -c 标志一起使用。 -w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。 -L 打印最长行的长度。
命令替换: 和重定向有点相似, 但区别在于命令替换是将一个命令的输出作为另一个命令的参数。 格 式:command1 command2
或 command1
(
c
o
m
m
a
n
d
2
)
(command2)
(command2) (cmd)和cmd
的作用是相同的,在执行一条命令时,会先将其中的 ``,或者是$() 中的语句当作命令执行一遍,再将结果加入到原命令中重新执行,例如:首先列出当前的所有信息, 并重定向到 aa 文件中:ls | cat > aa 或 ls > aa 然后, 通过命令替换, 列出 aa 文件中所有的文件信息ls –l cat aa
或者ls –l $(cat aa)
18、文件或目录的创建掩码
umask 指文件( 0666) 或目录( 0777) 创建时在全部权限中要去掉的一些权限, 普通用户缺省时 umask 的值为 002, 超级用户为 022。
002 表示创建目录时所有者的权限不去掉, 所属组权限不去掉, 其他组权限写属性去掉。
创建文件普通用户缺省的权限664 超级用户: 644
创建目录普通用户缺省的权限775 超级用户: 755
可通过 umask 001修改掩码值
19、改变目录或文件的权限
chmod用户用它控制文件或目录的访问权限。数字设定法
顺序是( u)( g)( o) chmod [mode] eg:chmod 755 mm.txt
u 表示“用户( user) ” 、g 表示“同组( group) 用户” 、o 表示“其他( others) 用户” 、a 表示“所有( all) 用户”
eg: chmod a+x a.out 所有用户都增加可执行权限
chmod ug+w, o-x text chmod ugo–x mm.txt
20、文件查找
命令: find 起始目录 查找条件 操作
查找条件可由逻辑运算符not、and、or组合
and:与,用-a表示 or:或,用-o表示 not:非,用!表示
eg: find /home/chen –name 1.p –a -type d
find /home/user -name main.cc -o -name main.c
find /home/user ! –name main.cc
( 1) 根据名称和文件属性查找
-name ’字串’ 字串内可用通配符*、 ?、 []
find /home/luke -name main.c |xargs ls -l
21、搜索文件内容 grep
命令: grep [选项][查找模式][文件名 1, 文件名 2, …]
^ :以什么开头 , 例如 ls –l | grep ^d 显示当前目录下的所
有子目录的详细信息 这里是以d开头,代表查找目录
$ :以什么结尾 。 例如 ls –l | grep c$ 显示当前目录下
以 c 结尾的文件
eg:找空行 grep ^$
find ! -name 1.c|grep rm -r 除了1.c的文件全删了。
find /user/include *h|xargs grep main
grep的通配: 一个字符 grep .ello file .表示记不清的一个字符
多个字符 grep h.* file 以h开头的
一个字符范围 grep h[a-z] file [ ]表示范围
例如: grep --nirs findtext …
22、 文档管理
命令: tar [主选项+辅选项] 目标文档 源文件或目录
tar 命令, 可以把一大堆的文件和目录全部打包成一个文件, 这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的
常用参数:
c: 创建新的档案文件。
r: 要把存档的文件追加到档案文件的末尾。
tar rf *.tar test
x: 从档案文件中释放文件。
f: 使用档案文件或设备。
v: 在归档过程中显示处理的文件。
z: 用 gzip 来压缩/解压缩文件, 后缀名为.gz, 加上该选项后可
以将档案文件进行压缩。
eg:, 把“ /home/user/” 下的所有后缀为.c 的归档到source.tar, 则使用 tar cvf source.tar /home/user/*.c
若归档时还要压缩, 则用tar zcvf source.tar.gz /home/user/*.c
若果将压缩文件释放, 则使用Tar xzvf source.tar.gz
排除某个文件或文件夹exclude.list 打包: tar -cvf test_conf_008.tar -X exclude.list .
23、 文件压缩解压
命令: gzip [选项]压缩或解压缩的文件名
d: 将压缩文件进行解压。
-v: 在压缩或解压过程中显示解压或压缩的文件
eg: Gzip –dv main.c.gz
24、scp 远程 copy 文件命令
eg:scp test -r chen@ip:path
scp file3 king@192.168.4.52:~/ 从本机 copy 到其他机器
scp king@192.168.4.52:~/file3 . 从其他机器 copy 到本机
可用ssh登录
25、ELF(Executable and Linking Format)是一个定义了目标文件内部信息如何组成和组织的文件格式。内核会根据这些信息加载可执行文件,内核根据这些信息可以知道从文件哪里获取代码,从哪里获取初始化数据,在哪里应该加载共享库,等信息。
readelf -hS nodeos | less // 例如: nodeos 表示二进制程序