linux 如何将隐藏文件名前面的点去掉? 我有大量的数据文件都是以点开头的隐藏文件如:“.dataxxxx”

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 如何将隐藏文件名前面的点去掉? 我有大量的数据文件都是以点开头的隐藏文件如:“.dataxxxx”相关的知识,希望对你有一定的参考价值。

linux 如何将隐藏文件名前面的点去掉? 我有成千上万个数据文件都是以点开头的隐藏文件如:“.dataxxxx”
请问:我如何才能将前面的点去掉。
mv .data_a data_a 只能修改一个文件,有没有批量处理的?

参考技术A 用find来查找点文件,并用-execdir 参数逐个文件处理,但 -execdir 后面能写的命令太多限制,我们写一个脚本,文件内容:

#!/bin/sh

X=`basename "$1"`
L=`expr length "$X"`
L=`expr $L - 1`
D=`expr substr "$X" 2 $L`
mv "$X" "$D"

上面几行如果用bash的语法来处理字符串会更简单,为了兼容还是用expr。
(例如这个脚本文件是/tmp/nodot.sh)现在运行:
find -type f -name ".*" -execdir /tmp/nodot.sh \;

(注意find命令将当前目录下包括所有子目录中的点文件都处理掉,要限制范围要另加参数)
参考技术B 单纯对目前目录下的普通隐藏文件(就是当前目录下的.*)进行处理,命令如下:
ls -adl .*|grep "^-"|awk 'print $NF'|sed 's/^.//g'|xargs -i mv .,追问

大哥,能具体讲讲吗?
就是想对当前目录下的文件进行操作

追答

上面的命令就是对当前目录操作的呀。。。具体是:
列出所有当前目录下的文件|找出普通文件|打印文件名|把文件名字符串中的点去掉|用传进来的字符串进行改名操作

本回答被提问者采纳
参考技术C 建议你参考一下这篇文章,
http://hi.baidu.com/dereklouie/blog/item/9b0b8f1bff8ab1d3ad6e75ff.html 通配符替换

MediaWiki隐藏index

Apache

  • 在httpd.conf配置文件中加载mod_rewrite.so模块,将前面的‘#‘去掉,如果没有则添加这句话:
#LoadModule rewrite_module modules/mod_rewrite.so
  • 然后将httpd.conf中
AllowOVerride None    #改为 All

Mediawiki

  • 修改配置文件(LocalSettings.php)

如果存在 $wgArticlePath 将原来的注释掉,然后在$wgScriptPath下添加:

$wgArticlePath      = "/$1";
  • 设置.htaccess文件

在mediawiki所在目录添加.htaccess文件:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#如果要定向到Main_Page去掉下面行首的#
#RewriteRule ^/*$ /wiki/index.php?title=Main_Page[L,QSA]
RewriteRule ^(.+)$ /wiki/index.php?title=$1 [L,QSA]

以上是关于linux 如何将隐藏文件名前面的点去掉? 我有大量的数据文件都是以点开头的隐藏文件如:“.dataxxxx”的主要内容,如果未能解决你的问题,请参考以下文章

看看怎么用CSS去掉ul li前面的黑色小圆点方法

XP和LINUX的启动顺序

如何隐藏浏览器的整个工具栏的部分?

Android去掉标题依然显示

怎样才能把文件的后缀名隐藏?

使用 tar 排除隐藏的点文件