linux需要修改文件名的时候该操作。
工具/原料:xshell、linux系统、本地设置1.0
1、打开xshell软件连接上linux服务器。
❷ linux命令
我给你举一个简单的文件显示的命令:dos里面有dir命令,而在linux中可以用ls命令加相应的参数显示文件的具体属性,当然也可以用dir命令,但没有ls强大,例如:
#ls
这样显示当前目录下的所有文件,显示的格式只有文件名字
#ls
-l
这样以列的形式显示出来文件,并且带着文件读写的权限,所属的用户和组,
#ls
-lat,加入这些参数,可以显示文件建立的时间,还有文件建立的先后。
这个命令很简单,可以显示出shell命令对文件操作的强大,如果想具体的知道ls和其他的命令的功能也用途,你可以使用#man
命令来操作,
❸ Linux下批量修改文件名
Linux下修改文件名有mv和rename。 其中mv命令只能对单个文件重命名 , 这是mv命令和rename命令的在重命名方面的根本区别。
linux的rename命令有两个版本,一个是c语言版本的,一个是perl语言版本的,判断方法:
输入man rename 看到第一行是:
RENAME(1) Linux Programmer’s Manual RENAME(1)
这个就是C语言版本的
而如果出现:
RENAME(1) Perl Programmers Reference Guide RENAME(1) 则是Perl版本的了
C语言版本格式:rename 原字符串 新字符串 文件名
Perl语言版本格式:rename 's/原字符串/新字符串/' 文件名
rename支持正则表达式
例子:
字母的替换 rename "s/AA/aa/" * // 把文件名中的AA替换成aa
修改文件的后缀 rename "s//.html//.php/" * // 把.html 后缀的改成 .php后缀
批量添加文件后缀 rename "s/$//.txt/" * // 把所有的文件名都以txt结尾
批量删除文件名 rename "s//.txt//" * // 把所有以.txt结尾的文件名的.txt删掉
在文件夹shell下创建文件10个文件
touch tmp_{1..10}.txt
找到含有“_“”的文件夹。
find ./ -name "*_*"
读取id, 用mv改名,$为自己理解为赋值后的id,格式为
❹ shell如何复制整个目录,就是把整个目录以及这个目录下所有的东西移动到其他文件夹中
1、打开Powershell工具;
❺ shell基本命令
常用命令
一、目录操作
a) ls--查看文件/目录:
常用:ls –l 查看详细文件列表
b) pwd--查看当前目录:
c) cd--改变工作目录:
常用①:cd ../ 跳转到上一级目录
备注: [./]当前目录 [../]上一级目录
常用②:cd /boot/ 跳转到指定目录
备注:指定目录一定是完整路径,例如win的文件路径一样。
d) mkdir--创建目录:
常用:mkdir 123 创建一个空文件夹
e) rm--删除文件/目录:
常用: rm -rf 123 删除目录文件夹,并且目录下的文件一并删除。
备注:直接使用命令[rm],只能删除空目录。
-r 删除目录 -f 强制删除文件或目录
f) mv--移动文件/目录改名、移动:
移动文件: mv 1.sh ./123 à mv 目标文件 移动至某目录
重名命文件:mv 1.sh 123.sh à mv 原文件 欲改后文件
g) ln--建立软连接和硬连接:
软连接:ln -s 123.sh ../ à ln -s 源文件 欲放置路径
如同window下的快捷方式,原理一致。
ln -s /root/桌面/共享文件夹/armQT/ /root/桌面
硬连接:ln 123.sh ../ à ln 源文件 欲放置路径
复制一个文件,且该文件具有独立性,不受源文件删除的影响;无论源文件或目标文件的内容修改时,两份文件都会同步修改。
h) rmdir--删除空目录:
二、文件操作
a)cat--查看文件内容,若文件不存在,创建对应文件:
常用:cat 1.txt
b)cp--拷贝文件、目录:
备份:cp 123.sh 1.sh à cp 源文件 目标文件
复制至某路径:cp 123.sh ../ à cp 源文件 目标路径
c)chmod--修改文件权限:
常用:chmod 777 1.sh 给1.sh最高权限
备注:读、写、运行三项权限可以用数字表示,就是r=4,w=2,x=1。
777就是rwxrwxrwx,意思是该登录用户(可以用命令id查看)、他所在的组和其他人都有最高权限。
一般模式:chmod +rw 1.sh 仅当前用户下1.sh具有可读写权限
d)touch--创建文件:
常用:touch ./1.sh à touch 路径+名称
f)vim--创建并打开文件:
常用:vim ./1.sh à vim 路径+名称
g)find--在指定目录查找符合条件的文件:
以[文件名+类型]寻找:find ./ -name “*.*”à find 路径 -nama “预找文件名+类型”
寻找文件名为”123”的文件,*代表不限制类型
find ./ ! -name “*.txt” à 过滤txt类型文件后,显示其他文件
备注:-name 区分大小写 -iname 不区分大小写
-o 连接符,作用如下图
以[文件名]寻找:find ./ -path “*1*”à find 路径 - path “预找文件名”
寻找文件名为”1”的所有文件
根据文件类型进行搜索:find . -type 类型参数
h)grep--在文件里查找内容:
从指定文件里查找内容:grep h ./file.txt à grep 内容 路径
从缓存区里查找内容:ps -ef | grep 5799 à 某显示命令 | grep 内容
(从进程列表中寻找带有”5799”的文本行)
i)tar--解压文件:
压缩:
tar -cvf 1.tar *.* //将目录里所有文件打包成1.tar
rar a 1.rar *.* //rar格式的压缩
zip 1.zip *.* //zip格式的压缩
解压:
tar -xvf file.tar //解压tar包
tar -xzvf file.tar.gz //解压tar.gz
unrar e file.rar //解压rar
unzip file.zip //解压zip
j)file--显示指定文件的类型:
三、用户系统及权限管理操作
a)su--用户类型切换:
b)adser--添加用户:
c)passwd--设置(更改)用户口令:
d)usermod--设置用户属性:
e)ps--显示当前系统用户进程列表:
常用:ps -ef 显示当前系统所有用户的详细进程
-e 显示所有程序。 -f 显示UID,PPIP,C与STIME栏位
-A 显示所有程序。
f)kill--删除执行中的进程:
常用:kill 123 à kill pid号
强制结束进程: kill -9 123 à kill -9 pid号
四、帮助命令
a)man--查询命令阅读手册
man kill à 查询有关[kill]的全部信息
man 2 kill à 只查询第二条有关[kill]的信息
b)help--查询命令阅读手册
五、网络相关命令
a)ifconfig 查看网络信息,设置ip
b)ping 测试网络联网状态
六、U盘操作相关命令
a)fdisk -l 识别usb存储设备
b)mount –t vfat /dev/sdb /mnt/udisk使用mount命令挂载U盘
c)umount /mnt/udisk 卸载U盘
七、安装软件包命令
a)rpm
常用组合命令:
-ivh:安装显示安装进度--install--verbose--hash
-Uvh:升级软件包--Update;
-qpl: 列出RPM软件包内的文件信息[Query Package list];
-qpi:列出RPM软件包的描述信息[Query Package install package(s)];
-qf:查找指定文件属于哪个RPM软件包[Query File];
-Va:校验所有的 RPM软件包,查找丢失的文件[View Lost];
-e:删除包
❻ linux下mv 多个文件到各自文件夹,如何操作
你这个问题主要是mv的用法了,我简单说一下:
1.
mv可以把多个文件移动到一个文件夹(目录)里面,比如:有a
b
c三个文件,一个目录d,用下面命令就能将a
b
c移动到d中
$
mv
a
b
c
d
需要注意的是,目录d必须在最后面,而且它前面不能再出现其他目录
2.
也可以使用带选项的mv命令,把多个文件移动到一个目录中,如
$
mv
a
b
c
-t
d
$
mv
-t
d
a
b
c
其中,-t后面紧接着的就是要移动到的目录,并且不能有多个目录出现
3.
如果出现了多个目录,比如下面的命令
$
mv
-t
adir
a
-t
bdir
b
mv:
multiple
target
directories
specified
会出现上面的警告,且只执行了前面正确的那部分,即只是将a移动到了adir,后面的没执行
4。如果你的文件和目录名称有一定的关系,你的问题可以通过脚本来解决,当然,脚本的具体内容也要视具体情况而定
假设有文件a
b
c,希望将a移动到adir,将b移动到bdir,将c移动到cdir,那么就可以这样来做
写一个简单shell脚本:move.sh
#
FileName
move.sh
#!/bin/bash
mv
$1
"$1dir"
$
chmod
+x
move.sh
然后,
$
find
.
-type
f
|
xargs
-n
1
./move.sh
执行完毕之后,就发现
$
tree
.
|--
adir
|
`--
a
|--
bdir
|
`--
b
即实现了将a移动到adir,b移动到bdir,c移动到cdir了。
所以,总得来说,你的具体问题还要具体分析才好。当然,如果你的情况正是我上面说的,那么,就用这种方法就OK了
希望对你有所帮助:)