CI 放到Linux网页怎么放到服务器上很头疼,求帮助

Linux 服务器开发工具
来源:open开发经验库
论你使用的机器是 Windows、Linux 还是 MacOS,都可以使用工具远程登录到 Linux 服务器上去。在此我们通常使用 SSH 协议(包括 SSH-1 和 SSH-2 两个版本,它们之间不相兼容,建议使用 SSH-2),SSH 协议是一个用于安全数据通信的协议(相比下 FTP、Telnet 本质上是不安全的)。一些 Linux 发行版会预装 SSH Server,有了 SSH Server 我们就可以通过 SSH Client 使用远程服务器上的 Shell 服务。常见的 SSH Client 有(这里我使用的是 Windows 机器):
通过 SecureCRT(这里使用的是 SecureCRT 7.0.1)连接到 SSH Server:SecureCRT 的关键配置:
终端模拟配置,Option -& Session Options -& Terminal -& Emulation 处,选择 Terminal 为 Linux 并且勾选 ANSI Color。这里选择了需要模拟的终端为 Xterm,勾选 ANSI Color 表示使用 ANSI 调色板(ANSI Color Palette)
SFTP(后面马上会谈到 SFTP)本地目录配置,Option -& Session Options -& Connection -& SSH2 -& SFTP Session 处可以填写本地目录(Local directory)
Option -& Session Options -& Terminal -& Appearance -& Character encoding 处可以选择字符编码,这里需要选择和 Linux 服务器相匹配的编码方式。Linux 中可以通过命令 locale 查看使用的语言和编码
SecureCRT 常用的快捷键如下:
Alt+B 用于在一个新的 Tab 中打开一个新的 Session
Alt+P 用于在一个新的 Tab 中打开一个新的 SFTP Session
Ctrl+F4 用于关闭当前 Tab
Shift+Insert 用于粘贴
可以使用 Shell 之后,我们还面临的一个问题就是如何把本地的文件上传自 Linux 服务器,这里我们使用 SFTP(SSH file transfer)。在 SecureCRT 中 File -& Connect SFTP Session(或者使用快捷键 Ctrl+F4)打开 SFTP Session,常用的 SFTP 命令如下:
help 命令用于获取帮助信息
工作目录相关命令
pwd — 查看远程 Linux 服务器的工作目录
lpwd — 查看本地工作目录
cd — 修改远程 Linux 服务器的工作目录
lcd — 修改本地工作目录
ls — 列出远程 Linux 服务器的工作目录中的文件
lls — 列出本地工作目录中的文件
这里的 l 含义为 Local
put 命令用于上传文件或者文件夹到 Linux 服务器。常见用法:put -r dir put file 
第一条命令用于递归的上传本地目录 dir 到远程 Linux 服务器的工作目录下
第二条命令用于上传本地文件 file 到远程 Linux 服务器的工作目录下
get 命令用于下载文件或者文件夹到本地。常见用法:get -r dir get file 
第一条命令用于递归的下载目录 dir 到本地工作目录下
第二条命令用于下载文件 file 到本地工作目录下
有了 SSH Client,我们就可以执行 Shell 命令,上传下载文件和文件夹了。
代码编辑工具
编辑代码的工具很多,也有各种不同的做法。一种常见的代码编辑的方式是使用 SSH Client 在远程 Linux 服务器上使用 Vim 或者 Emacs 进行代码编辑。Vim 的基本用法可以参考以下两篇文章:
Vim 的基本的配置可以参考:
代码构建工具
代码构建工具很多,常见的有 make、automake、cmake 等等。读者可以参考云风的关于 make 的相关文章:
代码调试工具
一般来说使用 gdb 进行调试, 一文介绍了一些基本的命令来满足我们在调试上的基本需要。
版本控制工具
在版本控制工具上,我们常见的主要是 Subversion(SVN)和 git,而后者似乎更加被 Linux 用户所喜爱。这里主要谈一下 SVN 的基本使用。
svn 命令的用法:
svn &subcommand& [options] [args] 
常用的 subcommand 如下:
用法:svn help [subcommand...]
说明:用于获取一个或者多个 subcommand 的帮助信息
范例:svn help co
co(checkout)
用法:svn co URL [PATH]
说明:用于从版本库中签出工作副本到 PATH 目录下
范例:svn co https://name5566-vim-/svn/trunk/ name5566-vim-bookmark
up(update)
用法:svn up [PATH...]
说明:用于将版本库的修改合并到工作副本中
范例:svn up
ci(commit)
用法:svn ci [PATH...]
说明:用于把工作副本的修改提交到版本库中,通常情况下,我们会和 -m 选项一起使用此子命令,-m 选项用于指定日志信息
范例:svn ci -m “增加了新的 XXX 特性”
st(status)
用法:svn st [PATH...]
说明:用于显示工作副本中文件和目录的状态,常常用于检测哪一些文件尚未处于版本控制中
范例:svn st
用法:svn add [PAHT...]
说明:用于把文件和目录纳入版本控制
范例:svn add file.txt
用法:
svn rm PATH
svn rm URL
说明:可以用于把文件和目录从版本库中删除,rm 子命令后可以接上 URL,用于立即从版本库中删除指定项目
范例:svn rm file.txt
我们可以设置 vimdiff 为 subversion 的 diff 工具。首先创建一个 Shell 脚本(来源于 ):
# Configure your favorite diff program here. DIFF="/usr/bin/vimdiff"
# Subversion provides the paths we need as the sixth and seventh # parameters. LEFT=${6} RIGHT=${7}
# Call the diff command (change the following line to make sense for # your merge program). $DIFF $LEFT $RIGHT
# Return an errorcode of 0 if no differences were detected, 1 if some were. # Any other errorcode will be treated as fatal. 
注意修改此 Shell 脚本的权限(u+x)。然后修改 $HOME/.subversion/config 文件:
[helpers] diff-cmd = diff.sh 
这里的 diff.sh 为前面所述的 Shell 脚本的路径名。
常用命令
这里主要介绍一下 Linux 下常用命令的一些最常见用法,实际上,很多命令远比你想象强大,这里并不做详述。
grep 是 Linux 最常用的命令之一,其能够用于检索文件或者标准输出中的行,其用法如下:grep [options] PATTERN [FILE...] 
很多命令可能会输出大量信息而其中仅仅一小部分是我们关心的,这时候 grep 是过滤信息的利器,例如:
ls 命令用于显示目录中的内容:
$ ls -l -rw-r--r--
1 name5566 name5566
2 19:22 file1 -rw-r--r--
1 name5566 name5566
2 19:22 file2 drwxr-xr-x 29 name5566 name5566 4096 Oct 31 17:07 src drwxr-xr-x
2 name5566 name5566 4096 Oct 31 16:58 test 
假如我们只希望显示目录,可以这么使用:
$ ls -l | grep ^d drwxr-xr-x 29 name5566 name5566 4096 Oct 31 17:07 src drwxr-xr-x
2 name5566 name5566 4096 Oct 31 16:58 test 
这里的 pattern ^d 含义为行首为 d。再如这样的用法:
$ ls | grep -i file1 
用于判断当前目录下是否存在 file1,这里的 -i 选项表示匹配时忽略大小写。
find 命令用于通过文件名去寻找文件(grep 命令主要用于在文件中查找信息),常见用法如下:$ find . -name file1 
用于在当前目录及子目录下查找名字为 file1 的文件。要注意的是,file1 必须是一个完整的文件名而不能是文件名的一部分
ps 命令用于显示当前进程的快照,常用的选项如下:# 查看系统上的所有进程(e 的含义为 every) ps -e # 输出时使用 full 格式列表(f 的含义为 full) ps -ef # 输出时使用 long 格式列表(l 的含义为 long) ps -el # 输出 effective user 为 name 的进程 ps -u name # 使用 full 格式列表 ps -fu name 
kill 和 killall 命令用于发送一个信号到一个进程。如果不指定发送的信号则发送 SIGTERM。用法如下:# 向进程 ID 为 pid 的进程发送 SIGTERM 信号 kill pid # 向名称为 name 的所有进程发送 SIGTERM 信号 killall name 
作业控制
系统基本的配置
服务的启动、停止、检查
环境变量
数据库
在数据库方面 MySQL 仍然有自己大量的用户。常见的任务:
创建用户
数据的导出和导入
免责声明:本站部分内容、图片、文字、视频等来自于互联网,仅供大家学习与交流。相关内容如涉嫌侵犯您的知识产权或其他合法权益,请向本站发送有效通知,我们会及时处理。反馈邮箱&&&&。
学生服务号
在线咨询,奖学金返现,名师点评,等你来互动鍙?渶涓}

我要回帖

更多关于 怎么把文件放到服务器 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信