这篇文章主要介绍“怎么使用Linux命令移动/复制文件/目录到指定目录下”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用Linux命令移动/复制文件/目录到指定目录下”文章能帮助大家解决问题。
Linux命令 移动/复制文件/目录到指定目录下
1、同一个服务器下复制文件或文件夹
1.1 复制文件
复制文件:把1.txt 复制到根目录下的sbin目录
cp +文件名(可带路径)+目标路径(带路径) 如:cp 1.txt ~/sbin/
1,2 复制目录
复制目录:把release 复制到根目录下的nfs目录下
(1).【cp】 +【-r】+【目录名(可带路径)】+【目标路径(带路径)】 -r 表示复制目录下所有子目录以及文件
如:cp -r release ~/nfs/
(2).【cp】 +【目录名/*】+【目标路径(带路径)】 /*表示目录下所有文件和目录 *是通配符
如: cp release/* ~/nfs/
2、 跨服务器拷贝文件或者文件夹
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。
当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。
2.1 命令格式
scp [参数] [原路径] [目标路径]
2.2 使用说明
从本地服务器复制到远程服务器
2.2.1 复制文件:
$scp local_file remote_username@remote_ip:remote_folder $scp local_file remote_username@remote_ip:remote_file $scp local_file remote_ip:remote_folder $scp local_file remote_ip:remote_file
指定了用户名,命令执行后需要输入用户密码;
如果不指定用户名,命令执行后需要输入用户名和密码;
2.2.2 复制目录:
$scp -r local_folder remote_username@remote_ip:remote_folder $scp -r local_folder remote_ip:remote_folder
第1个指定了用户名,命令执行后需要输入用户密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码;
3、使用示例
3.1、实例1:从服务器复制文件到本地目录
$scp root@10.6.159.147:/opt/soft/demo.tar /opt/soft/
说明: 从10.6.159.147机器上的/opt/soft/的目录中下载demo.tar 文件到本地/opt/soft/目录中
3.2、实例2:从服务器复制文件夹到本地
$scp -r root@10.6.159.147:/opt/soft/test /opt/soft/
说明: 从10.6.159.147机器上的/opt/soft/中下载test目录到本地的/opt/soft/目录来。
3.3、实例3:上传本地文件到远程服务器指定目录
$scp /opt/soft/demo.tar root@10.6.159.147:/opt/soft/scptest
说明: 复制本地opt/soft/目录下的文件demo.tar 到远程机器10.6.159.147的opt/soft/scptest目录
3.4、实例4:上传本地目录到远程机器指定目录
$scp -r /opt/soft/test root@10.6.159.147:/opt/soft/scptest
说明: 上传本地目录 /opt/soft/test到远程机器10.6.159.147上/opt/soft/scptest的目录中
4、移动文件夹到另一个文件夹
mv 文件名 目标文件夹路径
设置Linux命令别名
在操作 Linux 的时候可能会碰到一些非常长的命令,这个命令平时用的比较频繁,每次输入执行就会感觉非常麻烦。如果把一段长的命令设置成一个短的别名,就会很方便。
Linux 的 alias 命令可以帮我们设置长命令的别名。
服务器上的 alias 命令一览
在 Linux 服务器上执行一下 alias 命令,可以看到几个很熟悉的命令。如下所示。
[test@271ba307f4954c74955b28c8389bc648 ~]$ alias alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l.='ls -d .* --color=auto' alias ll='ls -l --color=auto' alias ls='ls --color=auto' alias vi='vim' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
例如:ll 命令不是 Linux 命令,ll 就是通过设置别名的方式执行 ls -l --color=auto。
alias 添加别名
2.1 alias 添加别名语法
alias 添加别名的语法为:alias [别名]='真实命令'。
2.2 alias 添加别名步骤
如下所示,为当前 Linux 用户 test 添加命令别名 svccdl,目的是进入当天的日志文件路径,操作步骤如下。
进入当前用户的 home 路径下,执行 vi .bashrc,添加如下一行文本:
alias svccdl='cd /home/test/logs/`date +%Y-%m-%d`'
编辑后的 .bashrc 文件内容如下所示。
# .bashrc # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi alias svccdl='cd /home/test/logs/`date +%Y-%m-%d`' # Uncomment the following line if you don't like systemctl's auto-paging feature: # export SYSTEMD_PAGER= # User specific aliases and functions
执行 source .bashrc 使别名永久生效。
[test@271ba307f4954c74955b28c8389bc648 ~]$ source .bashrc
使用测试
[test@271ba307f4954c74955b28c8389bc648 ~]$ svccdl [test@271ba307f4954c74955b28c8389bc648 2022-08-30]$ pwd /home/test/logs/2022-08-30