linux scp命令拷贝后,部分连接文件变成了文件夹

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux scp命令拷贝后,部分连接文件变成了文件夹相关的知识,希望对你有一定的参考价值。

linux常用命令(基础)

1. man 对你熟悉或不熟悉的命令提供帮助解释

eg:man ls 就可以查看ls相关的用法

注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。
2. ls 查看目录或者文件的属*,列举出任一目录下面的文件

eg: ls /usr/man

ls -l

a.d表示目录(directory),如果是一个”-”表示是文件,如果是l则表示是一个连接文件(link)

b.表示文件或者目录许可权限.分别用可读(r),可写(w),可运行(x)。

3. cp 拷贝文件

eg: cp filename1 filename2 //把filename1拷贝成filename2

cp 1.c netseek/2.c //将1.c拷到netseek目录下命名为2.c

4. rm 删除文件和目录

eg: rm 1.c //将1.c这个文件删除

5. mv 移走目录或者改文件名

eg: mv filename1 filename2 //将filename1 改名为filename2

mv qib.tgz ../qib.tgz //移到上一级目录

6. cd 改变当前目录 pwd 查看当前所在目录完整路径

eg: pwd //查看当前所在目录路径

cd netseek //进入netseek这个目录

cd //退出当前目录

7. cat,more命令

将某个文件的内容显示出来。两个命令所不同的是:cat把文件内容一直打印出来,而 more则分屏显示

eg; cat>1.c //就可以把代码粘帖到1.c文件里,按ctrl+d 保存代码。

cat 1.c 或more 1.c //都可以查看里面的内容。

gcc -o 1 1.c //将1.c编译成.exe文件,我们可以用此命编译出代码。

8.chmod 命令 权限修改 用法:chmod 一位8进制数 filename。

eg: chmod u+x filenmame //只想给自己运行,别人只能读

//u表示文件主人, g 表示文件文件所在组。 o 表示其他人 ;r 表可读,w 表可写,x 表可以运行

chmod g+x filename //同组的人来执行

9. clear,date命令

clear:清屏,相当与DOS下的cls;date:显示当前时间。

10. mount 加载一个硬件设备

用法:mount [参数] 要加载的设备 载入点

eg: mount /dev/cdrom

cd /mnt/cdrom //进入光盘目录

11. su 在不退出登陆的情况下,切换到另外一个人的身份

用法: su -l 用户名(如果用户名缺省,则切换到root状态)

eg:su -l netseek (切换到netseek这个用户,将提示输入密码)

12.whoami,whereis,which,id

//whoami:确认自己身份

//whereis:查询命令所在目录以及帮助文档所在目录

//which:查询该命令所在目录(类似whereis)

//id:打印出自己的UID以及GID。(UID:用户身份唯一标识。GID:用户组身份唯一标识。每一个用户只能有一个唯一的UID和 GID)

eg: whoami //显示你自已登陆的用户名

whereis bin 显示bin所在的目录,将显示为:/usr/local/bin

which bin

13. grep,find

grep:文本内容搜索;find:文件或者目录名以及权限属主等匹配搜索

eg: grep success * /*查找当前目录下面所有文件里面含有success字符的文件

14. kill 可以杀死某个正在进行或者已经是dest状态的进程

eg; ps ax

15. passwd 可以设置口令

16. history 用户用过的命令

eg: history //可以显示用户过去使用的命令

17. !! 执行最近一次的命令

18. mkdir命令

eg: mkdir netseek //创建netseek这个目录

19. tar 解压命令

eg: tar -zxvf nmap-3.45.tgz //将这个解压到nmap-3.45这个目录里

20. finger 可以让使用者查询一些其他使用者的资料

eg: finger //查看所用用户的使用资料

finger root //查看root的资料
参考技术A 不太可能吧, 是不是被覆盖的机器上本来就有和文件同名的文件夹?本回答被提问者采纳 参考技术B 截个图看一下 参考技术C 正常,覆盖了

Linux命令之远程拷贝文件scp

概述

scpsecure copy的缩写,scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。linux的scp命令可以在linux服务器之间复制文件和目录。

因此我们可以用于写一个脚本在一台服务器上来向多台服务器发送文件部署代码。

语法

scp的基本语法是:scp [选项] [参数]

常用选项如下:

选项说明
-1使用ssh协议版本1-2
-2使用ssh协议版本2
-4使用ipv4
-6使用ipv6
-B以批处理模式运行
-C使用压缩
-F指定ssh配置文件
-l指定宽带限制
-o指定使用的ssh选项
-P指定远程主机的端口号,如果默认 SSH 端口不是 22,则使用此选项指定 SSH 端口。
-p保留文件的最后修改时间,最后访问时间和权限模式
-q不显示复制进度
-r以递归方式复制,可用于复制目录

使用

从远程复制文件到本地

从远程服务器复制指定文件到本地主机的指定目录下,基本语法格式如下:

scp user@ip:/path/to/remote/file /path/to/local/directory

参数说明:

  • user@ip::指的是用户名和远程服务器的IP地址,如root@192.168.3.5。注意,用户名和服务器IP地址都是远程服务器的而不是本地服务器的。注意:冒号是必须的。
  • /path/to/remote/file:指的是远程服务器上你想要复制的文件,如/root/.ssh/restart.sh
  • /path/to/local/directory:指的是将远程服务器上的文件复制到本地后存放在哪个目录,如/root/home

例如,将远程服务器上的/root/test.txt文件复制到本地服务器上的/root/.ssh目录下注意,需要输入远程服务器指定用户的密码。

scp root@192.168.40.90:/root/test.txt /root/.ssh

从远程复制目录到本地

从远程服务器复制指定目录到本地主机的指定目录下,基本语法格式如下:

scp -r user@ip:/path/to/remote/directory /path/to/local/directory

参数说明:

  • -r:是一个选项,表示以递归的方式复制,复制目录的时候使用。
  • user@ip::指的是用户名和远程服务器的IP地址,如root@192.168.3.5。注意,用户名和服务器IP地址都是远程服务器的而不是本地服务器的。注意:冒号是必须的。
  • /path/to/remote/directory:指的是远程服务器上你想要复制的目录。
  • /path/to/local/directory:指的是将远程服务器上的目录复制到本地后存放在哪个目录下,如/root/home

例如,将远程服务器上的/root/.ssh/文件夹复制到本地服务器上的/root/home目录下,注意,需要输入远程服务器指定用户的密码。

scp -r root@192.168.40.90:/root/.ssh /root/home

上传本地文件到远程

可以将本地服务器上的指定文件上传到远程服务器上的指定目录下,语法如下:

scp /path/to/local/file user@ip:/path/to/remote/directory

参数说明:

  • user@ip::指的是用户名和远程服务器的IP地址,如root@192.168.3.5。注意,用户名和服务器IP地址都是远程服务器的而不是本地服务器的。注意:冒号是必须的。
  • /path/to/local/file:指的是本地服务器待上传的文件,如/root/.ssh/local.txt
  • /path/to/remote/directory:指的是将本地服务器上的文件上传后存放在哪个目录,如/root/home

例如,将本地服务器上的/root/.ssh/local.txt文件上传到192.168.40.90这台远程服务器上的/root/home目录下。注意,需要输入远程服务器指定用户的密码。

scp /root/.ssh/local.txt root@192.168.40.90:/root/home

上传本地目录到远程

可以将本地服务器上的指定文件上传到远程服务器上的指定目录下,语法如下:

scp -r /path/to/local/directory user@ip:/path/to/remote/directory

参数说明:

  • -r:是一个选项,表示以递归的方式复制,复制目录的时候使用。
  • user@ip::指的是用户名和远程服务器的IP地址,如root@192.168.3.5。注意,用户名和服务器IP地址都是远程服务器的而不是本地服务器的。注意:冒号是必须的。
  • /path/to/remote/directory:指的是远程服务器上你想要复制的目录。
  • /path/to/local/directory:指的是将远程服务器上的目录复制到本地后存放在哪个目录下,如/root/home

例如,将本地服务器上的/root/.ssh文件夹上传到远程服务器,放在/root/home目录下,注意,需要输入远程服务器指定用户的密码。

scp -r /root/.ssh/ root@192.168.40.90:/root/home

拓展延申

无论是从远程服务器上复制文件目录到本地,还是从本地服务器上传文件目录到远程服务器,每一次连接都需要输入远程服务器的密码,这很麻烦。所以我们可以让两台服务器建立信任关系,从此scp操作就不需要输入密码了,具体如何操作请参考:让两台甚至多台Linux服务器建立SSH信任关系

以上是关于linux scp命令拷贝后,部分连接文件变成了文件夹的主要内容,如果未能解决你的问题,请参考以下文章

linux 远程拷贝文件: scp

Linux使用scp命令进行文件远程拷贝详解

Linux命令之远程拷贝文件scp

Linux远程复制scp和rsync区别

linux远程拷贝文件!!

scp机器间远程拷贝