工具命令

小工具

Mac下使用ssh操作远程服务器

背景

Mac远程操控linux服务器,上传代码,安装环境;window版可以使用xshell

过程

  1. 安装 item2 更方便
  2. 打开终端:ssh root@xx.xxx.xxx.xxx,即 ssh 空格 用户名@目标机器IP地址,出现linux 服务器远程终端
  3. 问题:权限不足
1
2
3
4
5
6
7
8
9
10
11
12
13
14
permission denied 或者authentication denied, 
意思是权限不足
这里需要修改一个配置文件的值就可以通过了
vi /etc/ssh/ssh_config
点击i进入编辑状态,把PasswordAuthentication设成yes,
然后把PasswordAuthentication前面的#号去掉使之生效
然后使用命令关闭ssh服务
sudo launchctl unload -w /System/Library/LaunchDaemons/ssh.plist
然后重启,去掉un
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
输入一个命令查看重启状态
sudo launchctl list | grep ssh
如果-0什么的一行,就是成功的
然后重新连接应该就能连上了
  1. 设置ssh生成SSHKEY;查看链接http://blog.csdn.net/xiaofei125145/article/details/30243535
  2. 上传文件–scp
    同理,可以使用上述远程连接的方式!
    基本命令:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
root# scp --help  
usage: scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 [...] [[user@]host2:]file2

-1 强制scp命令使用协议ssh1
-2 强制scp命令使用协议ssh2
-4 强制scp命令只使用IPv4寻址
-6 强制scp命令只使用IPv6寻址
-B 使用批处理模式(传输过程中不询问传输口令或短语)
-C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p 保留原文件的修改时间,访问时间和访问权限。
-q 不显示传输进度条。
-r 递归复制整个目录。
-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
-c cipher 以cipher将数据传输进行加密,这个选项将直接传递给ssh。
-F ssh_config 指定一个替代的ssh配置文件,此参数直接传递给ssh。
-i identity_file 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
-l limit 限定用户所能使用的带宽,以Kbit/s为单位。
-o ssh_option 如果习惯于使用ssh_config(5)中的参数传递方式,
-P port 注意是大写的P, port是指定数据传输用到的端口号
-S program 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。

使用实例:
1,下载目录
$scp -r root@172.30.4.42:/tmp/test2 ./
将172.30.4.42linux系统中/tmp/test2目录copy到当前目录下面,在这172.30.4.42前面加了root@,提示输入密码,如果不加呢,会提示你输入用户名和密码

2,下载文件
$ scp 172.30.4.42:/tmp/test2/aaa.php ./
将172.30.4.42linux系统中/tmp/test2/aaa.php文件copy到当前目录下面

3,上传目录
$ scp -r ./mytest 172.30.4.42:/tmp/test2
将当前目录中的mytest目录上传到172.30.4.42服务器/tmp/test2目录下面。

4,上传文件
$ scp ./mytest/password.php 172.30.4.42:/tmp/test2
将当前目录中的mytest目录下的password.php上传到172.30.4.42服务器/tmp/test2目录下面。

使用Filezilla或者Transmit来上传文件,大文件

Linux命令行记录

Linux命令主要有以下9类:

  1. 系统维护及管理命令

date——显示和设置系统日期和时间
setenv——查询或设置环境变量(set environment variable)

  1. 文件操作及管理命令
    ls——显示文件及目录
    find——查找文件
  2. 系统维护及管理命令
    kill——发送一个 signal 给某一个 process
    at——在指定的时间执行指令

  3. 磁盘及设备管理命令

df——检查文件系统的磁盘空间占用情况(disk free)
du——显示磁盘空间的使用情况(disk usage)
mount——挂载设备

  1. 用户管理命令

adduser——新增用户帐户
userdel——删除用户帐号

  1. 文档操作命令

csplit——分割文件(Split a file into context-determined pieces)
sort——对文件中的各行进行排序
8.网络通信命令

netstat——显示网络连接、路由表和网络接口信息
ifconfig——显示或设置网络设备

  1. 程序开发命令

cc——c编译
link——链接

  1. X Window管理命令

startx——启动X Window
XF86setup——图形界面下运行的配置程序

Shell程序组成:

(1) 命令或Shell程序;
(2) 位置参数;
(3) 变量及特殊字符;
(4) 表达式比较;
(5) 控制流程语句,例如while,case等;
(6) 函数。
例:备份当前目录下的所有文件。

1
2
3
4
5
6
7
8
mkdir backup
for file in ‘ls’
do
cp $ file backup/$ file
if [$? –ne 0] then
echo “copying $ file error”
fi
done

shell预定义变量是由$符和另一个符号组成的,常用的shell预定义变量有:

1
2
3
4
5
6
7
  $#:位置参数的数量
  $*:所有位置参数的内容
  $?:命令执行后返回的状态
  $$:当前进程的进程号
  $!:后台运行的最后一个进程号
  $0:当前执行的进程名
  其中,“$?”用于检查上一个命令执行是否正确(在Linux中,命令退出状态为0表示该命令正确执行,任何非0值表示命令出错)。

Windows的命令控制界面

Windows命令主要有以下4类:
(1) 系统信息命令
time——Displays or sets the system time. 显示或设置系统时间
date——Displays or sets the date. 显示或设置日期
mem——Displays the amount of used and free memory in your system.
driverquery——Enables an administrator to enumerate and display the list of installed device drivers as well as their properties.
systeminfo——This command line tool enables an administrator to query for basic system configuration information.

(2) 系统操作命令
shutdown——关机
runas——允许用户用其他权限运行指定的工具和程序,而不是用户当前登录提供的权限。
taskkill——This command line tool can be used to end one or more processes. Processes can be killed by the process id or image name.
(3) 文件系统命令
copy——Copies one or more files to another location.
del——删除文件
mkdir——建立目录
(4) 网络通信命令
ping——检查网络是否能够连通
netstat——显示当前正在活动的网络连接的详细信息
route——主要用来管理本机路由表,可以查看,添加、修改或删除路由表条目。

1
2
3
4
5
6
 &——同时执行多条命令,而不管命令是否执行成功。
Usage:第一条命令 & 第二条命令 [& 第三条命令...]
&&——同时执行多条命令,当碰到执行出错的命令后将不执行后面的命令,如果一直没有出错则一直执行完所有命令。
Usage:第一条命令 && 第二条命令 [&& 第三条命令...]
||——同时执行多条命令,当碰到执行正确的命令后将不执行后面的命令,如果没有出现正确的命令则一直执行完所有命令。
Usage:第一条命令 || 第二条命令 [|| 第三条命令...]
  1. 直接在命令行输出命令
    Systeminfo & mem
  2. 批处理
1
2
3
4
5
6
	@echo off
mkdir test
echo hello
pause
```
例:

@echo off
mem>%1\meminfo.txt
echo generate memoryinfo ok!

@echo off
type %1*.txt
echo type ok!

@echo off
mkdir test
call exam2.bat test
call exam3.bat test
echo call ok!
pause
`

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×