发表于: 2017-09-02 21:27:29
1 1068
今天完成的事情:学习了shell的基础知识 自己尝试写了一个shell
上次学习linux还是在任务一 学的那一点常用命令有点忘记了
这次复习了一下 又学习了一下新的一些命令 感觉命令一定要常用
对linux系统又增加了一些理解
基础命令和shell基础介绍:首先是开头
程序必须以下面的行开始(必须方在文件的第一行):
#!/bin/sh
符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。
当编辑好脚本时,如果要执行该脚本,还必须使其可执行。
要使脚本可执行:
编译 chmod +x filename 这样才能用./filename 来运行
这里我就犯了错误 以为用的是root权限没有必要 结果依旧报错
中间就写我们平常用的命令
无图无真相 贴图看操作 这里是开始写停止resin的命令 (vim i Esc这些命令原来介绍过了不再赘述)全部命令如下:
vim stop.sh
这里开始我写的是 cd/home
写错了 没有加空格 空格很重要啊报错如下 (路径错误)
再看另外的错误 这个是开始的命令
这就是没有使用上面那个权限命令 不过还可以这样
再看这样 开始.后面又忘记了空格
最后我们在 回到开始的方法 使用那个权限命令之前我们先看下这个
好吧当时截图没有截到stop.sh 反正跟start.sh一样
然后
这里也是当时写的时候cd后面没有空格 可以看到使用这个chmod命令就可以执行了 再看一下
好了 操作部分看完了 分析一下原理 介绍一番linux基础
ls -al 显示目录下所有文件包括隐藏文件 以及他们的相关信息 具体信息含义这个我以前日报也写过不再赘述
可以看出stop.sh开始是没有执行权限的 不管我用的是不是root账户
所以需要使用改变权限的命令 这里用的是增加X权限 相关的还有777等 以前谈到过不再赘述
而执行shell有四种方法
方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本:
这里也就是在opt下 ./stop.sh
方法二:以绝对路径的方式去执行bash shell脚本:
这里是 /opt/stop.sh
方法三:直接使用bash 或sh 来执行bash shell脚本 就是我们上图操作
注意,若是以方法三的方式来执行,那么,可以不必事先设定shell的执行权限,甚至都不用写shell文件中的第一行(指定bash路径)。因为方法三是将hello.sh作为参数传给sh(bash)命令来执行的。这时不是hello.sh自己来执行,而是被人家调用执行,所以不要执行权限。那么不用指定bash路径自然也好理解了 所以不需要那句命令
方法四:在当前的shell环境中执行bash shell脚本: 也就那个. stop.sh
前三种方法执行shell脚本时都是在当前shell(称为父shell)开启一个子shell环境,此shell脚本就在这个子shell环境中执行。shell脚本执行完后子shell环境随即关闭,然后又回到父shell中。而方法四则是在当前shell中执行的。
这个理解的不是很懂 不过这样执行之后跳回到了resin文件下的bin目录了
然后就是安装svn
* 验证svn安装是否成功:svnadmin --version |
* 创建svn的数据仓库:svnadmin create E:\repository\svn\itcast |
* 启动svn服务:svnserve -d -r E:\repository\svn\itcast 单仓库启动 svnserve -d -r E:\repository\svn 多仓库启动 建议使用多仓库 |
* 验证svn启动是否成功:netstat -an 查看3690端口是否被占用 |
* 客户端检出(checkout)文件:svn checkout svn://ip:port/repName . |
* 将本地文件纳入版本控制:svn add fileName |
* 将本地文件提交到服务器:svn commit -m "message" fileName |
* 从服务器更新文件到本地:svn update [fileName] |
* 删除本地文件:svn delete fileName |
* 恢复文件:svn revert fileName 注意:revert只能恢复没有提交的操作 |
端口命令还不是很懂
参考http://www.cnblogs.com/liuxianan/p/linux_install_svn_server.html
这里写的很详细 就不在多说了
不过安装完后 使用命令行链接 命令svn co url 就能下载下来
示范svn co svn:/120............. 省略了
这里注意 写到哪里 就会把写的东西下载下来 如果出错了 Ctrl+C 取消的
但是很奇怪怎么下载了两次 可能是我误操作了
还剩下打包部署 resin 以及写在一起弄成shell 太晚了 明天
明天计划的事情:相关脚本 nginx设置
遇到的问题:遇到一些问题 靠师兄们的日报以及百度 参考linux基础 解决了
收获:很多东西 上面基本都写出来了
禅道链接:http://task.ptteng.com/zentao/my-task.html
评论