摘要:config.sh#/bin/bashrequire_once(){ #File the true path ,To prevent a symbolic link local realpath=$(readlink -f "$1") local basedir=$(dirname "$realpath") local file_full_name=$(basename "$realpath") local file_name=$(remove_suffix "$file_full_name"); #require
阅读全文
摘要:1. 逐行读取文件使用for循环来读取文件 for line in `cat file.txt` do echo $line done注意:由于使用for来读入文件里的行时,会自动把空格和换行符作为一样分隔符,如果行里有空格的时候,输出的结果会很乱,所以只适用于行连续不能有空格或者换行符的文件使用while循环读取文件 cat file.txt |while read line do echo $line done 或者: while read line do echo $line done < file.txt注意:由于使用while来读入文件里的行时,会整...
阅读全文
摘要:在 linux 下查看某进程的完整执行路径,需要先使用netstat命令查出进程的PID,然后根据PID到proc目录下查找进入到此PID号为目录名的目录下,使用ls -l命令查看exe详细信息即可看到。下图以查找使用80端口的ngnix的完整执行路径为示例:文章来源:启科网络http://www.qkweb.net/article-243-1.html转载请注明出处
阅读全文
摘要:调试环境:Redhat9.0 Apache1.3.29 Mysql3.23.58 PHP4.3.4Linux系统的安装我就不讲了,这是基本功,其实这篇文章在类似Redhat的其他linux也应该通用,大家只要掌握我提供的方法就行。记得安装Redhat9。0的时候不要安装系统默认的apache,mysql和php以及相关的软件。已经安装的请用rpm -e * 删除已经安装的包。1.安装Mysql3.23.58其实老实说直接安装Mysql官方网站提供的rpm包也是一个比较可行的办法,他的官方网站的rpm包的提供基本跟tar包发行是同步的,这点我比较喜欢,至少安装rpm包的在后面的调试中不会出现my
阅读全文
摘要:1.linux下启动mysql的命令: mysqladmin start /ect/init.d/mysql start (前面为mysql的安装路径) 2.linux下重启mysql的命令: mysqladmin restart /ect/init.d/mysql restart (前面为mysql的安装路径) 3.linux下关闭mysql的命令: mysqladmin -u root -p密码 shutdown /ect/init.d/mysql shutdown (前面为mysql的安装路径) 4.连接本机上的mysql: 进入目录mysql\bin,再键入命令my...
阅读全文
摘要:1、查看进程 ps -e2、查看进程所在路径 (1. ps 获得PID (2. 进入proc文件系统里对应的目录:/proc/<PID> (3. ls -l exe 链接对应的就是可执行文件的全路经3、启动apache/usr/local/apache/bin/httpd -f /usr/local/apache/conf/httpd.confservice httpd restart/usr/local/apache/bin/apachectl -k start4、停止apache/usr/local/apache/bin/apachectl -k stop 粗暴一些/usr..
阅读全文
摘要:转载自:http://dev.firnow.com/course/3_program/shell/shelljs/20090828/172746.htmlbash下有很多像{}、[]等一些符号命令,下面是我对一些常用的符号命令的学习笔记,若有错误或纰漏望各位兄弟指正。一、.(source).(点)与source命令一样,从文件中读取并执行命令,无论该文件是否都有可执行权限都能够正确的执行。且是在当前shell下执行,而不是产生一个子shell来执行(我们通常使用“./filename.sh”去执行一个文件是在当前shell下产生一个子shell去执行的)。所以在设置bash的环境的变量时,就必
阅读全文
摘要:BASH只支持一维数组,但参数个数没有限制。声明一个数组:declare -a array(其实不用声明,按数组方式直接赋值给变量即可,BASH就知道那是数组)数组赋值:(1) array=(var1 var2 var3 ... varN)(2) array=([0]=var1 [1]=var2 [2]=var3 ... [n]=varN)(3) array[0]=var1 arrya[1]=var2 ... array[n]=varN 计算数组元素个数:${#array[@]} 或者 ${#array[*]}BASH的特殊参数 @ 和 * 都表示“扩展位置参数,从1开始”,但形式稍有差...
阅读全文
摘要:比如 url=/home/g0/ss.txt 我想把目录和文件分开 u=/home/g0/ file=ss.txt试试 basename命令和dirname命令 basename是取文件名,dirname是取目录。看下面的例子: shell> url=/home/g0/ss.txt shell> base=`basename $url` shell>echo $base 结果为:ss.txt shell> url=/home/g0/ss.txt shell> base=`dirname $url` shell> echo $base 结果为:/home/g0
阅读全文
摘要:linux bash shell之变量替换::=句法、=句法、:-句法、-句法、=?句法、?句法、:+句法、+句法变量替换和变量默认值设置是紧密相关的,至少从概念出发是如此。参数扩张是将类似于变量的参数用它的值来替换。例如以“echo $VAR”的形式调用一个简单的变量。此外还有更多的特性可以访问。这个句法还包含一些没有扩展的特性,虽然这些特性自身很有意义。首先,这类特性执行默认变量赋值。使用这些特性时,整个表达式需要用花括号括起来。: ${VAR:=”some default”}这些代码开始的冒号是一个正确执行非活动任务的shell命令。在这个句法中,它仅仅扩展了行中紧随其后的所有参数。本例
阅读全文
摘要:shell 编程中使用到得if语句内判断参数 –b 当file存在并且是块文件时返回真 -c 当file存在并且是字符文件时返回真 -d 当pathname存在并且是一个目录时返回真 -e 当pathname指定的文件或目录存在时返回真 -f 当file存在并且是正规文件时返回真 -g 当由pathname指定的文件或目录存在并且设置了SGID位时返回为真 -h 当file存在并且是符号链接文件时返回真,该选项在一些老系统上无效 -k 当由pathname指定的文件或目录存在并且设置了“粘滞”位时返回真 -p 当file存在并且是命令管道时返回为真 -r 当由pathnam...
阅读全文
摘要:linux 查看系统信息命令是linux初学者必备的基础知识, 这些命令也非常有用, 因为进入linux第一件事就可能是首先查看系统信息, 因此必要的系统的学习一下这些linux系统信息命令还是非常有必要的!# uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出所有PCI设备# lsusb -tv # 列出所有USB设备# lsmod # 列出加载的内核模块# env # 查看环境变量资源# free
阅读全文
摘要:在Linux的多目录命令提示符中工作是一种痛苦的事情,但以下这些利用cd和pushd切换目录的技巧有助于你节省时间和精力。在Linux命令提示中,用cd命令来改变当前目录。这是cd命令的一些基本用法:改变你的根路径,键入cd,按回车键。进入一个子目录,键入cd,空格,然后是子路径名(例如:cd Documents),再按回车键。进入当前目录的上一级目录,键入cd,空格,两个点,然后按回车键。进入一个特定的目录,键入cd,空格,路径名(例如 cd /usr/local/lib),再按回车键。为了确定你所在的目录,你可以键入pwd,按回车键,你将看到你所在的当前目录名称。用pushd实现在不同目录
阅读全文