- 博客(15)
- 收藏
- 关注
原创 关于shell中的${},##和%%的记忆
关于${}用来截取字符串的方法如下所示:file=/dir1/dir2/dir3/my.file.txt${file#*/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt${file##*/}:删掉最后一个 / 及其左边的字符串:my.file.txt${file#*.}:删掉第一个 . 及其左边的字符串:file.txt${file##*.}:删
2016-11-30 11:16:57 564
原创 批量修改Makefile内容
提出问题在64位linux上运行某程序时,发现其需要32位的库,其中一个就是fontconfig-2.7.0.tar.gz。然后在linux上编译fontconfig-2.7.0.tar.gz,操作如下:./configure --prefix=`pwd`/../install/makemake install将编译出来的库放到软件中,运行出错。编译出来是64位的。 root@inspur:/
2016-11-28 11:41:42 728
原创 ssl/scp等自动连接处理
在完成交叉编译OPENSSH后,又有一个需求:要求自动登录服务器,并从服务器传输文件。如何处理呢?这里要用到expect,分别实现一个发送和接收程序。参考此程序可以实现ftp/ssh等需要用户输入的场景。server_send.sh#!/usr/bin/expect -fset password 123456 #变量赋值set master_file [lindex $argv 0] #将第一个输
2016-11-23 17:31:27 575
原创 交叉编译OPENSSH(二)
上一节交叉编译OPENSSH(一)中编译openssh的时候,用到了几个脚本,如下所示:root@inspur:/home/liufei/github/shell/openssh/compressed# ls -ltotal 5608-rw-r--r-- 1 root root 967395 11月 23 14:38 openssh-4.6p1.tar.gz-rw-r--r-- 1 root
2016-11-23 16:09:35 1825
原创 交叉编译OPENSSH(一)
本文分两部分,第一部分介绍目标文件编译以及目标板上的一些操作要求,第二部分介绍交叉编译脚本介绍(交叉编译OPENSSH(二))。第一部分:目标文件编译以及目标板上的一些操作要求一.服务器编译下载指定的文件,并建立如下目录结构:root@test:/home/liufei/github/shell/openssh# tree ..├── compressed│ ├── openssh-4
2016-11-23 15:36:44 1776
原创 程序员修炼之道-从小工到专家读后感
最近3周,利用早上的时间,阅读了《程序员修炼之道-从小工到专家》,这本书写得非常好,深有感触。可能由于水平有限,对于其中一些珠玑理解没有那么强的感受。这里主要讲一些我感触特别深的点。一、关于知识资产的概念 对我而言这是一个全新的概念,想想这么长时间以来,我一直没有让自己的资产增值,放着大好时间全部都浪费了,为此前不认真读书,感到难过。幸运的是,现在能认识到这个观点,并为后面的人生努力奋斗。哈哈,不
2016-08-11 18:55:40 1536
原创 Git学习与训练
在gitlab上,每个人需要fork远程分支到自己的目录下,然后在自己的目录下进行开发,开发完成将代码上传到自己的远程仓库,然后通过gitlab服务器发起merge request,同步到主仓库中。为了更快掌握git相关操作,这里设置一项训练,如下:**假设远程仓库为player_oop,本地克隆后为my_player_oop,远程仓库比本地更新,需要同步远程代码到本地,这里不采用git pull的
2016-07-27 13:03:34 1529
原创 betterdownload.sh: 42: betterdownload.sh: Syntax error: "(" unexpected
**将betterdownload.sh放到另外一台虚拟机上下载,有如下错误: betterdownload.sh: 42: betterdownload.sh: Syntax error: “(” unexpected**跟踪后打印如下:root@ubuntu:/home/liufei/pms# sh -x betterdownload.sh + target_dir=default_git
2016-06-12 15:08:17 245
原创 【SHELL】如何对比两个数据库差异?
今天一个同事碰到一个问题:要比较两个数据库文件的差异,数据量太大,一个一个看是不现实的,有什么办法更快一点呢?中午睡觉的时候,作了一些尝试,终于想到一个办法。具体的办法如下:一、先安装sqlite3,在ubuntu上使用sudo apt-get install sqlite3。如果想了解sqlite3的操作,请参考:http://blog.csdn.net/yangchao228/article/d
2016-06-07 15:35:03 3948
原创 【SHELL】如何让一个脚本有错误时停下来?
今天写了一个自动编译的脚本,发生有错误的时候直接编译过,如果不注意会被忽悠。有没有什么办法可以在脚本运行错误的时候,自动停下来呢?在网上查了一下,参考http://bbs.chinaunix.net/thread-1243237-1-1.html,然后作了实践。主要方法是在脚本后面增加 ||exit 即可。代码如下:./build.sh ../configs ../install "C" || ex
2016-06-03 12:25:28 3686
原创 【SHELL】批量下载GIT代码
现在下载代码由SVN更换成GIT,代码仓库路径也从原来的一个变为多个,路径较多,记忆复杂,手工处理较慢。那有没有一种办法可以简单、方便处理呢?当然有,这里将介绍我今天使用shell处理的方法。已知: 1、输入:有类似如下的代码路径:git@example.com:framework/app_manager.git 2、输出:将所列出的代码路径全部下载到指定的文件夹下以下为SHELL代码:#!/b
2016-06-02 19:10:11 3543 2
原创 【SHELL】一个非常有趣的问题
使用SHELL解决的一个问题现在需要代码合并,从SVN上合并到GIT上,GIT上的代码头文件和源文件分布在不同的文件夹下,直接使用Beyond compare来比较的话,不是什么好的体验,非常麻烦。于是我在想有什么好办法能更快速的解决这个问题。问题梳理: - 文件夹名称发生变化 - 文件内容可能有变化,需要对比同步 - 文件名保持不变终于想到一个相对简便的方法,先分别把需要对比的.h/.
2016-06-02 10:23:03 336
原创 由《英雄联盟》引发的思考
我经常会玩一个游戏,叫《英雄联盟》。一个人独来独往,找不到人开黑,分段也上不去,不过自得其乐。如果是顺风局的话,怎么玩都可以,哪怕送人头都可以(当然不是恶意送人头,这里指无意识,被人围殴的那种),都没有人怪你。但是碰到逆风局,就会有人投降、相互问候家里人、挂机等出现。虽然我不会那么做,但是有时候也会想放弃,希望从头开一局,下把我一定好好打。可结果并非如何,仿佛进入了一个循环,可能下次还会如何,为什
2016-01-10 17:21:54 481
转载 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-01-07 22:33:16 261
原创 从今天起,坚持写博客
为什么?因为很长时间都没有思考,慢慢发现不会去思考了。亡羊补牢,犹未晚矣。通过持续不断的写博客可以让我不断思考,思维会变,行为会变,人生亦会改变。加油。为了做一个更好的男人。To be a better man.
2016-01-07 22:11:59 320
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人