Linux如何移动复制删除带特殊文字符前缀(-,--,;)的的文件

在linux系统中,许多元字符,如分号(semicolon),空格(space),反斜线(backslash),美元符号(dollar sigh),问号(question mark),星号(asterisk) 通常被解释为命令,-(dashes)或者--被解释为命令的选项,通过以下的方式就可以复制、移动、删除带-或者--的文件,:

1、首先,创建文件,创建前缀带-或--文件不能直接使用touch命令,因为会被解释为命令的选项,所以得用追加的形式创建:

[[email protected] tmp]# echo >-foo.txt
[[email protected] tmp]# echo >-bar.txt

创建文件后,如果使用ls命令尝试通配符的方式列出文件,则会出现以下报错:

[[email protected] tmp]# ls -l *.txt
ls: invalid option -- ‘.‘
Try ‘ls --help‘ for more information.

需要在命令加入--分界符选项,分隔开选项和参数:

[[email protected] tmp]# ls -l -- *.txt
-rw-r--r--. 1 root root 2192022 Jan  9 09:03 137k.txt
-rw-r--r--. 1 root root       1 Jan  9 16:36 -bar.txt
-rw-r--r--. 1 root root       1 Jan  9 16:36 -foo.txt

相对应的,复制与移动文件的命令使用如下:

[[email protected] tmp]# cp -- -foo.txt /opt/
[[email protected] tmp]# mv -- -bar.txt /opt/

这个分隔符对于rmdir,rm,ls命令同样有效。

时间: 2024-12-23 11:06:16

Linux如何移动复制删除带特殊文字符前缀(-,--,;)的的文件的相关文章

linux中批量删除带空格的文件

两种批量删除带空格文件的方式: 第一种用find找到需要删除的文件,-print0指将空格替换成Null;而xargs中的-0参数又将null转换成空格 find . -name "xfsf*" -print0 | xargs -0 rm -rf 第二种用ls查找需要删除的文件,xargs中的-i参数指将每一项的名称替换成{} ls . |grep -i "xxx*" | xargs -i rm -rf {} 单独删除时用\将空格转义 原文地址:https://ww

Linux复制指定目录及子目录下特定类型的文件

主要参考这个: http://www.2cto.com/os/201208/144996.html 拷贝一些内容就是: 首先建立一个用于测试的目录 可见,目录中主要包含用于测试的*.txt文件和用于充当炮灰的*.tes文件 目标是保持当前的目录结构,只把txt文件复制出来 方法一:当不需要的文件类型较为单一时,可以通过完全复制然后删除指定类型的文件完成 Step1 使用命令 cp -r test/ test2 将测试目录test下所有内容完全复制到test2. Step2 组合使用find及xa

linux下创建和删除软、硬链接

参考:https://www.cnblogs.com/xiaochaohuashengmi/archive/2011/10/05/2199534.html linux下创建和删除软.硬链接 在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号.文件属性保存在索引结点里,在访问文件时,索引结点被复制到内存在,从而实现文件的快速访问. 链接是一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法.Linux中包括两种链接:硬链接(Ha

centos vi 复制 删除 剪切 黏贴命令

复制: yy:复制当前行 nyy:复制的行数(含当前行).假设复制3行,鼠标定位在第1行的位置,输入3yy即复制了1~3行的内容 复制多行另外的方式:(起始行,结束行  co 黏贴位置)的方式,例如复制3~5行的内容黏贴到9行后面,命令模式下输入 :3,5 co 9 删除: dd:删除当前行 ndd:删除多行,同复制 删除多行另外的方式:(起始行,结束行  de)的方式,例如删除3~5行,命令模式下输入 :3,5 de 剪切: 剪切原理和删除一样,都是用d,dd,ndd,其实linux删除后的内

linux基本命令之复制命令cp

cp命令是在linux中用来复制文件或者目录最常用的命令之一.cp命令的功能很强大,也有很多的用法. cp命令: cp - copy files and directories 语法: cp [OPTION]... [-T] SOURCE    DESTS cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]... -t DIRECTORY   SOURCE... 选项: -a, --archive same as -dR --preserve=all 效

linux中find批量删除空文件及空文件夹

linux下批量删除空文件(大小等于0的文件)的方法  代码如下 复制代码 find . -name "*" -type f -size 0c | xargs -n 1 rm -f 用这个还可以删除指定大小的文件,只要修改对应的 -size 参数就行,例如:  代码如下 复制代码 find . -name "*" -type f -size 1024c | xargs -n 1 rm -f 就是删除1k大小的文件.(但注意不要用 -size 1k,这个得到的是占用空

Linux之LVM 之见解带案例

LVM 逻辑卷管理LVM是硬盘的一个系统工具.无论在Linux或者其他类似的系统,都是非常的好用.传统分区使用固定大小分区,重新调整大小十分麻烦.但是,LVM可以创建和管理"逻辑"卷,而不是直接使用物理硬盘.可以让管理员弹性的管理逻辑卷的扩大缩小,操作简单,而不损坏已存储的数据.可以随意将新的硬盘添加到LVM,以直接扩展已经存在的逻辑卷.LVM并不需要重启就可以让内核知道分区的存在. LVM在线解析:http://baike.baidu.com/view/361916.htm?fr=a

linux中vi复制与粘贴(整行,多行)

vi编辑器中的整行(多行)复制与粘贴就非常必要了. 1.复制 1)单行复制 在命令模式下,将光标移动到将要复制的行处,按“yy”进行复制: 2)多行复制 在命令模式下,将光标移动到将要复制的首行处,按“nyy”复制n行:其中n为1.2.3…… 2.粘贴 在命令模式下,将光标移动到将要粘贴的行处,按“p”进行粘贴 vi复制多行文本的方法方法1:光标放到第6行,输入:2yy光标放到第9行,输入:p此方法适合复制少量行文本的情况,复制第6行(包括)下面的2行数据,放到第9行下面.方法2:命令行模式下输

Linux入门培训教程 linux下拷贝cp删除rm移动mv命令参数以及说明

拷贝移动删除在windows中看起来这么简单,但linux经常使用的文字界面,所以对于linux系统 下拷贝cp删除 rm 移动mv命令参数就不得不需要了解和学习了 cp 该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,同MSDOS下的copy命令一样,功能十分强大. 语法: cp [选项] 源文件或目录 目标文件或目录 说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中. 该命令的各选项含义如下: - a 该选项通常在拷贝目录时使用.它保留链接.文件属性,并递归地拷