Linux中短横线(-) 用法

在Linux中短横线(-)可以表示输出流,具体用法如下。

1、cat - 

如果指定cat的文件为-,表示从标准输入读取。这和直接使用cat命令没有什么区别(直接使用cat,也是从标准输入读取数据,然后输出)

[root]$ cat
aaa
aaa
bbb
bbb
ccc
ccc
^C
[root]$ cat -
aaa
aaa
bbbb
bbbb
ddddd
ddddd
^C

2、搭配管道 |

$ echo 123 | cat -
123

3、利用ssh完成scp命令:

cat jdk.tar.gz | ssh root@192.168.56.101  'cat - > /tmp/jdk.tar.gz'

含义是,cat jdk.tar.gz 产生输出流, 在管道后面的 - ,则可以接受输出流,并重定向到 /tmp/jdk.tar.gz 

4、打包重定向:

tar -cvf - /data/test | pigz -6 -p 10 -k > test.tar.gz
如果仅仅使用tar命令,则:
tar -cvf /data/test.tar /data/test
在这里,对/data/test 目录进行归档,输出流通过-来表示,然后重定向给pigz命令。

 

 

### 回答1: 在Linux中,以"-"开头的文件名被认为是一个选项标志,因此在删除这样的文件时需要使用特殊的方法。有两种方法可以删除以"-"开头的文件: 方法1:使用绝对路径 ``` $ rm /path/to/-filename ``` 在这种情况下,"/path/to/"是文件所在的目录路径,"-filename"是以"-"开头的文件名。 方法2:使用双横线选项 ``` $ rm -- -filename ``` 在这种情况下,"--"告诉命令行工具不再解释后面的参数作为选项标志,而是作为一个文件名。"-filename"是以"-"开头的文件名。 ### 回答2: 在Linux中,要删除以"-"开头的文件,可以使用以下方法: 1. 使用相对或绝对路径删除文件: ``` rm ./-filename ``` 或 ``` rm /path/to/-filename ``` 2. 使用通配符删除文件: ``` rm -- --filename ``` 在这里,使用"--"选项告诉rm命令后面的内容是文件名,而不是选项。 3. 使用绝对路径和引用删除文件: ``` rm /path/to/"-filename" ``` 在这里,使用双引号将文件名包围起来,以使系统将其视为文件名而不是选项。 无论使用哪种方法,都要小心删除文件,尤其是以"-"开头的文件,因为它们可能被视为选项而导致意外的结果。在执行删除操作之前,请确保仔细检查文件名和路径,以避免删除错误的文件。 ### 回答3: 在Linux中,删除以"-"开头的文件可以使用以下方法: 1. 使用绝对路径删除:使用rm命令来删除,直接指定文件的绝对路径。例如,如果文件的路径为/home/user/-example.txt,那么使用命令`rm /home/user/-example.txt`即可删除该文件。 2. 使用通配符删除:可以使用通配符来删除以"-"开头的文件。例如,如果想要删除当前目录下所有以"-"开头的文件,可以使用命令`rm -- -*`。其中"-"表示忽略后面的选项,"--"用于指示之后的内容不是选项而是文件名,"*"表示任意字符的通配符。 3. 使用相对路径删除:如果以"-"开头的文件位于当前目录下,可以使用相对路径来删除。例如,如果文件名为"-example.txt",使用命令`rm ./-example.txt`即可删除该文件。"./"表示当前目录。 需要注意的是,删除操作是不可撤销的,请谨慎操作。在执行删除操作前,最好确认要删除的文件名正确无误,并且确保不会误删其他重要文件。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赶路人儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值