Linux Bash命令示例:文件相关

创建或清空一个文件

上面命令使用了输出重定向操作符 >:打开文件进行操作。如果文件不存在,创建文件,如果文件存在,则清空文件。上面命令没有重定向任何内容,所以为空。

如果你想用指定内容替换文件内容,可以使用如下命令:

filename文件的内容为 something you want to write。

在文件为追加内容

上面命令使用了输出重定向操作符 >>:在文件尾写入内容。如果文件不存在则创建文件。写入的文件内容前有新行符(n),如果你不想要n,可以指定-n参数,如下:

读入文件的第一行并存入到一个变量中

read命令:从标准输入中读取一行放入到line里。<:重定向文件内容到标准输入。-r:读取raw数据。

另一种写法:

同:

一行一行的读取文件内容

如果你不想用<,可以用管道:

随机读取文件中的一行数据

上面用到了shuf外部命令(generate random permutations)。

下面借助sort命令:

同:

获得文件大小

从文件路径中提取文件名

假如你有一个字符串/path/to/filename.py,怎么获得文件名filename.py。

上面用到了参数扩展 ${var##pattern},使用pattern试图匹配path。

从文件路径中提取目录

上面用到了参数扩展 ${var%pattern}。

快速拷贝一个文件

假如我们要拷贝/path/to/file 到 /path/to/file_copy,我们通常的写法是:

简便写法,可以用{…}表达式:

同理,mv移动文件可以用如下命令:

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注