【导语】下面是小编收集整理的Linux 删除乱码文件与文件夹(支持批量)方法linux操作系统(共10篇),供大家参考借鉴,欢迎大家分享。

篇1:Linux 删除乱码文件与文件夹(支持批量)方法linux操作系统
Linux 有时候会产生一些乱码文件名,这些文件大小为0,而且删除的时候总是打不了名字,所以需要通过节点来删除,具体删除方法如下:
1. 查询inode :
代码如下复制代码[oracle@test]$ ll -i
total 14694452
17956913 -rw-r–r– 1 oracle oinstall 0 Jan 18 20:24 1?.txt
2. 修改测试文件名:
代码如下复制代码find . -inum 17956913 -exec mv {} file.txt ;3. 删除乱码文件
代码如下复制代码[oracle@test]$ ll -itotal 14694452
….
-rw-r–r– 1 oracle oinstall 0 Jan 18 20:24 file.txt
记录:删除乱码的文件可使用 find . -inum 17956913 -exec rm {} ;
文件夹
对于文件夹,尤其是非空的文件夹,上面的方法就不适用了,要用到另外的参数来实现,首先相同的是查看乱码文件夹的节点号
代码如下复制代码ls -i
18612483 瑗块.?.. - Thank you, Love(128kbps) .06.22
接下来使用find命令删除
代码如下复制代码find -inum 18612483 -exec rm -rf {} ;
find: ./瑗块.?.. - Thank you, Love(128kbps) 2011.06.22: No such file or directory
虽然提示我们找不到此文件或文件夹,但其实已经表明删除了,
Linux 删除乱码文件与文件夹(支持批量)方法linux操作系统
,
-exec作用是查找后执行命令,其中{}代表前面查询到的结果,空格+;是结束符,其它就不说了。-exec后可以跟任何常用命令,因此这方法不但适用于文件夹,文件也可以。
小技巧
怎么批量删除呢?其实很简单,用for就好了
代码如下复制代码文件
for n in 22413315 22413314;do find -inum $n -delete;done
文件夹
for n in 22413315 22413314;do find -inum $n -exec rm -rf {} ;;done
$n是变量名,与for后面定义的一致,其它没啥好说的,适用其它操作。
篇2:Linux根据节点删除特殊符号以及乱码文件linux操作系统
Linux根据节点删除特殊符号以及乱码文件有碰到这类问题的朋友可参考参考,
今天执行发现项目下有一个文件竟然是“”,怎么删都删除不掉
使用命令删除
都提示错误,不能正常删除,于是考虑到节点删除,
先找到到节点
执行节点删除命令
find ./ -inum 15335644 -print -exec rm {} -rf ;
删掉文件
篇3:“删除”文件或文件夹的方法
[方法一]
第一步:选中要删除的文件或文件夹(一个或若干个或全部)。
第二步:移动鼠标到工具栏上单击“删除”,或者单击菜单栏“文件”一“删除”。
第三步:在确认对话框中单击“是”。
[方法二]
第一步:选中要删除的文件或文件夹(一个或若干个或全部)。
第二步:移动鼠标到要删除的文件或文件夹上单击鼠标右键,在出现的菜单上选择并单击“删除”。
第三步:在确认对话框中单击“是”。
[方法三]
第一步:选中要删除的文件或文件夹(一个或若干个或全部)。
第二步:在要删除的文件或文件夹上按下鼠标左键不要放开。
第三步:拖动鼠标到桌面“回收站”图标上放开鼠标。
第四步:在确认对话框中单击“是”。
[方法四]
第一步:选中要删除的文件或文件夹(一个或若干个)。
第二步:按“Del”键。
第三步:在确认对话框中单击“是”。
不论采用哪一种方式,删除的文件只是被移入“回收站”。如果在删除文件的同时按下“Shift”键,则文件会被直接删除,而不进入“回收站”,当然,这样也就无法再捡回来。
篇4:Linux中RM快速删除大量文件/文件夹方法linux操作系统
删除文件直接使用rm就可以删除文件了,删除目录了可以使用rm来删除,下面我们一起来看看Linux中RM快速删除大量文件/文件夹方法.
昨天遇到一个问题,在Linux中有一个文件夹里面含有大量的Cache文件(夹),数量级可能在百万级别,使用rm -rf ./* 删除时间慢到不可接受,Google了一下,查到了一种方法,试用了下确实比单纯使用rm快了一个数量级,
方法见下:
1)首先建立一个空白文件夹。
mkdir /tmp/www.111cn.net
2)之后使用以下语句即可快速的删除文件。
rsync --delete-before -d /tmp/www.111cn.net/ /the/folder/you/want/delete/
原文中说不要忘记文件夹后的“/”
3)一杯咖啡过后,就Ok了。
篇5:Linux删除文件及大量文件删除方法linux操作系统
在linux中删除文件用rm命令,如果要删除批量文件我们需遍历目录才可以,下面我们一起来看看Linux删除文件及大量文件删除方法,希望文章对各位会有所帮助,
删除文件夹: rm -rf [FolderDir]
复制文件夹: cp -rf [SrcDir] [DstDir]
Linux删除文件,文件夹主要用的命令是 rm ,下面将对 linux rm 命令做一个简单的介绍。
语法:
rm [选项] DirName
该命令中的[选项]常用的有以下几种:www.111cn.net
-i 删除前逐一询问确认
-f 即使被删除的文件的属性是只读,也直接删除,无需逐一确认,默认是需要逐一确认的。
-r 将目录及以下所有的文件都逐一删除
示例:
rm -i *.php 删除所有后缀为 php 的文档;删除前逐一询问确认
rm -r phpernote 将 phpernote 目录及子目录中所有文件都删除,当文件为只读时,会有提示操作是否删除
rm -rf /www.111cn.net/access 将会删除 /www.111cn.net/access 目录以及其下所有文件、文件夹,删除时不会有任何删除确认
提示
注意:
(1)在linux没有回收站,所以在使用 rm 命令的时候,切记文件或目录被删除之后就无法再恢复了。
(2)如果提示没有权限运行该命令,可使用 sudo 提升用户的权限然后再执行命令
怎么删除大文件呢
Google出来的有测试数据,但是测试环境没写。
个人感觉和文件系统格式有很大关系。
今天抽空测试了一下:
测试机配置较低,是N年前买的台式机了。
Sata硬盘
Intel(R) Pentium(R) D CPU 3.20GHz
4G内存。
EXT4文件系统:
/dev/mapper/VolGroup-lv_home on /home type ext4 (rw,noatime)
Linux www 2.6.32-220.7.1.el6.i686 #1 SMP Tue Mar 6 21:21:22 GMT i686 i686 i386 GNU/Linux
CentOS release 6.2 (Final)
rsync version 3.0.6 protocol version 30
创建16/256/ 的目录结构,最深层目录中都存放250个文件,每个文件300字节。
Mkdir.php
代码如下复制代码/**
16 * 256 * 250
*/
for($i=0; $i<=0xF; $i++) {
for($j=0; $j<=0xF; $j++) {
for($m=0; $m<=0xF; $m++) {
$dirname = sprintf(“test/%x/%x%x”, $i, $j, $m);
//创建目录
mkdir($dirname, 0755, TRUE);
for($k=-0; $k<250; $k++) {
$filename = sprintf(“%s/%d.html”, $dirname, $k);
file_put_contents($filename, str_repeat(“111”, 100) );
}
}
}
}
Find 遍历一次需要35秒:
[modify@www test]$time find ./ -type f |wc -l
1024000
real 0m35.679s
user 0m1.559s
sys 0m9.946s
百度到的 rsync 删除方法 先创建一个空目录 empty 然后用rsync同步
[root@www modify]# time rsync --delete-before -d empty/ test/
real 1m13.964s
user 0m1.933s
sys 0m35.384s
google到的 rsync 删除方法
[modify@www ~]$time rsync -a --delete empty/ test/
real 1m8.685s
user 0m1.919s
sys 0m35.113s
find f delete:
[root@www modify]# time find test/ -type f -delete
real 1m11.396s
user 0m1.484s
sys 0m34.422s
find xargs 单进程肯定比 find delete要慢,因为多了管道,
就不测了。
find xargs 16进程,有点投机取巧的感觉,其实就是并发运行了16个rm –Rf来删除第一层子目录:
[root@www modify]# cd test/
[root@www test]# time find ./ -maxdepth 1 | xargs -n 1 -P 16 rm -Rf
rm: cannot remove directory: `.'
real 1m3.160s
user 0m1.022s
sys 0m41.364s
rm –rf
[root@www modify]# time rm test/ -Rf
real 1m20.334s
user 0m1.074s
sys 0m32.179s
结论:
看起来,各种删除方式的表现都很接近。
PS:后来发现,每次重复测试,数据都会有一定的浮动。 应该多测几次取平均值的。。。
PS2: 求xfs的测试数据。 Ext3就算了。网上的文章,可能指的都是ext3。
最后说几个折衷的方案:
mv 的速度是最快的,低于0.1秒,然后可以放到后台去慢慢删除(nice -n 20)。
Mkfs 在某种条件下,也是一个不错的选择。
篇6:linux删除和修改乱码文件的方法
ls -i //列出文件节点
find ./ -inum XXX(节点号) -print -exec rm -rf {} ; //删除节点号文件
find . -inum XXXX(节点号) -exec mv {} file.txt ; //其实我们还可以执行这个命令,修改乱码文件名为正常文件名,大家可以测试一下啊,呵呵篇7:linux 批量删除进程与查看进程详解linux操作系统
1. 在 LINUX 命令平台输入 1-2 个字符后按 Tab 键会自动补全后面的部分(前提是要有这个东西,例如在装了 tomcat 的前提下, 输入 tomcat 的 to 按 tab)。
2. ps 命令用于查看当前正在运行的进程。
grep 是搜索
例如: ps -ef | grep java
表示查看所有进程里 CMD 是 java 的进程信息
ps -aux | grep java
-aux 显示所有状态
ps
3. kill 命令用于终止进程
例如: kill -9 [PID]
-9 表示强迫进程立即停止
通常用 ps 查看进程 PID ,用 kill 命令终止进程
网上关于这两块的内容
4.批量删除进程
介绍两种方法。要kill的进程都有共同的字串。
代码如下复制代码[plain]kill -9 `ps -ef |grep xxx|awk '{print $2}' `
kill -9后面的符号是Tab键上方那个。
如上就是kill -9 `列出进程,找到包含xxx的行,输出pid的列`
kill、ps、grep都是很常用的命令了。
awk的作用是输出某一列,{print $2}就是输出第二列,如上即是pid这一列。这里有一篇awk的教程
代码如下复制代码[plain]ps -ef | grep xxx | grep -v root | awk '{print $2}' | xargs kill -9
grep -v这个参数的作用是排除某个字符。所以这里排除了root执行的命令。
之后也利用awk找到pid这一列。
最后的xargs是从标准输出获取参数并执行命令的程序,即从前面的命令获取输出作为参数来执行下一个命令。
5.清理僵尸进程
例
今天在维护服务器的时候,发现有5个nova-novncproxy的僵尸进程。
?
26327 ? S 0:05 _ /usr/bin/python /usr/bin/nova-novncproxy --config-file=/etc/nova/nova.conf
4765 ? Z 0:00 _ [nova-novncproxy]
4766 ? Z 0:00 _ [nova-novncproxy]
4767 ? Z 0:00 _ [nova-novncproxy]
4768 ? Z 0:00 _ [nova-novncproxy]
4769 ? Z 0:00 _ [nova-novncproxy]
一般僵尸进程很难直接kill掉,不过您可以kill僵尸爸爸,
父进程死后,僵尸进程成为”孤儿进程”,过继给1号进程init,init始终会负责清理僵尸进程.它产生的所有僵尸进程也跟着消失。
代码如下复制代码ps -e -o ppid,stat | grep Z | cut -d” ” -f2 | xargs kill -9
或
kill -HUP `ps -A -ostat,ppid | grep -e ’^[Zz]‘ | awk ’{print $2}’`
当然您可以自己编写更好的shell脚本,欢迎与大家分享。
我将nova-novncproxy stop后再start,僵尸进程即消失,问题解决。
另外子进程死后,会发送SIGCHLD信号给父进程,父进程收到此信号后,执行waitpid函数为子进程收尸。就是基于这样的原理:就算父进程没有调用wait,内核也会向它发送SIGCHLD消息,而此时,尽管对它的默认处理是忽略,如果想响应这个消息,可以设置一个处理函数。
6.如何避免僵尸进程呢?
处理SIGCHLD信号并不是必须的。但对于某些进程,特别是服务器进程往往在请求到来时生成子进程处理请求。如果父进程不等待子进程结束,子进程将成为僵尸进程(zombie)从而占用系统资源。如果父进程等待子进程结束,将增加父进程的负担,影响服务器进程的并发性能。在Linux下 可以简单地将 SIGCHLD信号的操作设为SIG_IGN。
signal(SIGCHLD,SIG_IGN);
这样,内核在子进程结束时不会产生僵尸进程。这一点与BSD4不同,BSD4下必须显式等待子进程结束才能释放僵尸进程
或者
用两次fork(),而且使紧跟的子进程直接退出,是的孙子进程成为孤儿进程,从而init进程将负责清除这个孤儿进程。
篇8:linux系统怎么批量查找文件与文件内容linux操作系统
在linux中查找文件替换文件都只能使用命令方式,不能像windows一样可以远程桌面然后再操作,
比如查找当前目录下面所有的php文件里面某个关键字
代码如下复制代码find ./ -name “*.php” | xargs grep ‘关键字’
如果需要查找的内容包含特殊符号,比如$等等,grep要加参数
代码如下复制代码find ./ -name “*.php” | xargs grep -F ‘关键字’
文件名查找
文件名查找方法:
例如我们知道某个文件包含有srm这3个字母,那么要找到系统中所有包含有这3个字母的文件是可以实现的,输入:
代码如下复制代码find /etc -name '*srm*'
这个命令表明了linux系统将在/etc 整个目录中查找所有的包含有srm这3个字母的文件,比如 absrmyz,tibc.srm等等符合条件的文件都能显示出来。如果你还知道这个文件是由 srm 这3个字母打头的,那么我们还可以省略最前面的星号,命令如下:
代码如下复制代码find /etc -name 'srm*'
一些其它参考
find -name april* 在当前目录下查找以april开始的文件
find -name april* fprint file 在当前目录下查找以april开始的文件,并把结果输出到file中
find -name ap* -o -name may* 查找以ap或may开头的文件
find /mnt -name tom.txt -ftype vfat 在/mnt下查找名称为tom.txt且文件系统类型为vfat的文件
find /mnt -name t.txt ! -ftype vfat 在/mnt下查找名称为tom.txt且文件系统类型不为vfat的文件
find /tmp -name wa* -type l 在/tmp下查找名为wa开头且类型为符号链接的文件
find /home -mtime -2 在/home下查最近两天内改动过的文件
find /home -atime -1 查1天之内被存取过的文件
find /home -mmin +60 在/home下查60分钟前改动过的文件
find /home -amin +30 查最近30分钟前被存取过的文件
篇9:linux复制文件夹与文件实例介绍linux操作系统
本文章来介绍一下关于linux复制文件夹与文件的一些基础用法,有需要学习的朋友可参考一下本文章,
CP命令
格式: CP [选项] 源文件或目录 目的文件或目录
选项说明:-b 同名,备分原来的文件
-f 强制覆盖同名文件
-r 按递归方式保留原目录结构复制文件
cp -r /tmp/a /root/a
例
.复制文件,只有源文件较目的文件的修改时间新时,才复制文件
cp -u -v file1 file2
.将文件file1复制成文件file2
cp file1 file2
.采用交互方式将文件file1复制成文件file2
cp -i file1 file2
.将文件file1复制成file2,因为目的文件已经存在,所以指定使用强制复制的模式
cp -f file1 file2
.将目录dir1复制成目录dir2
cp -R file1 file2
.同时将文件file1、file2、file3与目录dir1复制到dir2
cp -R file1 file2 file3 dir1 dir2
.复制时保留文件属性
cp -p a.txt tmp/
.复制时保留文件的目录结构
cp -P /var/tmp/a.txt ./temp/
.复制时产生备份文件
cp -b a.txt tmp/
.复制时产生备份文件,尾标 ~1~格式
cp -b -V t a.txt /tmp
.指定备份文件尾标
cp -b -S _bak a.txt /tmp
复制文件不提示
# vi ~/.bashrc
如果你看到如下内容,以下命令都会用别名执行了,就是说自动加了 -i 参数
alias rm=’rm -i’
alias cp=’cp -i’
alias mv=’mv -i’
为了让复制和移动大量文件去覆盖目标时,不会产生一个个的提示,命令应该这样写
# cp -rf /home/huzs.net/* /www/huzs.net/
注意 cp 命令前加了 ,意思是不让它用~/.bashrc里的别名运行,即 -i 参数
cp命令
功能:将给出的文件或目录拷贝到另一文件或目录中,就如同DOS下的copy命令一样,功能非常强大,
语法:cp [选项] 源文件或目录 目标文件或目录
说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。
篇10:linux 删除文件和目录与恢复详解linux操作系统
前面你已经学习了使用 touch 命令来创建文件,以及使用 mkdir 命令来创建目录 tigger。
现在,你需要学习如何删除文件和目录。 使用 rm 命令来删除文件和目录是一个直截了当的过程。详情请参阅 rm 的说明书页。删除文件和目录的选项包括:
» -i — 互动。提示你确认删除。这个选项可以帮助你避免误删文件。
» -f — 强制。代替互动模式,不提示地删除文件。除非你知道自己在干什么,使用这个选项通常不是明智之举。
» -v — 详细。显示文件的删除进度。
» -r — 递归。将会删除某个目录及其中所有的文件和子目录。
要使用 rm 命令来删除文件 piglet.txt,键入:
rm piglet.txt
警告
一旦文件或目录使用 rm 命令删除后,它就一去不复返了。
使用 -i(互动)选项会再给你一次机会来决定你是否真的想删除该文件。
rm -i piglet.txt
rm: 是否删除一般文件‘piglet.txt’?
你还可以使用通配符“*”来删除文件,不过,你必须谨慎而为,因为它很容易删除你并不想删除的文件。
要使用通配符来删除文件,可以键入:
rm pig*
上面的命令会删除目录中所有起首为 pig 字母的文件。
你还可以使用 rm 命令来删除多个文件。 例如:
rm piglet.txt sneakers.txt
你可以使用 rmdir 来删除目录( 如:rmdir foo),但是目录必须是空目录。要使用 rm 来删除目录,你必须指定 -r 选项。
譬如,如果你想递归地删除目录 tigger,你可以键入:
rm -r tigger
如果你想组合选项,例如强制一种递归的删除,你可以键入:
rm -rf tigger
另一个比使用 rm 更安全的删除目录的命令是 rmdir 命令。这个命令不允许你使用递归删除,因此不能删除包含文件的目录。
警告
rm 命令可以删除你的整个文件系统!如果你登录为根用户,然后键入这个简单命令: rm -rf /,你的麻烦就大了;这个命令会递归地删除你的系统上的一切。
阅读 rmdir 的说明书页( man rmdir)来获取关于这个命令的详细信息
Linux 文件误删除恢复操作
一、用运SecureCRT远程对操作系统上,查看一下当前系统版本号,及文件系统格式
二、为方便本次实验,我们新创建一文件,
三、执行删除操作,
四、运用,系统自还工具debugfs来修复
五、打开,刚刚被删除文件所在的分区
六、用ls 加-d参数显示刚刚删除文件所在的目录
七、显示有尖括号的就是我们要找的文件Inode 号 执行logdump –I <393289>
八,执行完命令后,显示了一屏信息,我们需要的是下面这一行,并且要记住,后面的值
九,退出debugfs
十,执行如下命令
十一,以上结果表示恢复成功我们看下/tmp目录下到底有没有
十二,tmp目录下有我们显示一下,
linux下删除乱码文件
根据inode 来修改或删除linux 下乱码的文件
1. 创建测试文件:
touch 1?.txt
2. 查询inode :
[oracle@test]$ ll -i
total 14694452
17956913 -rw-r--r-- 1 oracle oinstall 0 Jan 18 20:24 1?.txt
3. 修改测试文件名:
find . -inum 17956913 -exec mv {} file.txt ;
4. 检查修改结果
[oracle@test]$ ll
total 14694452
....
-rw-r--r-- 1 oracle oinstall 0 Jan 18 20:24 file.txt
记录:删除乱码的文件可使用 find . -inum 17956913 -exec rm {} ;
★IIS8中添加WCF支持几种方法总结Windows服务器操作系统
★linux两台服务器间copy传输文件的最简单方法linux操作系统
★linux tar实现分卷压缩与还原数据方法 linux操作系统
文档为doc格式