- 浏览: 274529 次
- 性别:
- 来自: 北京
最新评论
-
Xujian0000abcd:
说的太好啦~赞一个~
shell if语句中的并列 -
Jimmy.song:
终于在楼主这里找到答案,很受益,谢谢~
使用diff或者vimdiff比较远程文件(夹)与本地文件(夹)
文章列表
shell 有关命令行参数
- 博客分类:
- Shell
通常调用UNIX程序的格式是:
command options files
一些与传递给shell的参数相关的变量:
$# 命令行参数的个数
$? 调用命令的返回值
$$ 当前进程的进程号
$! 最后一个后台命令的进程号
$0 命令行的第一个参数,也就是命令名
$n 命令行的第n个参数,如果要取超过9个参数${n}
$* 所有的命令行参数,等于("$1 $2...")
"$@" 所有的命令行参数,等于("$1" "$2"...) (可以遍历)
$_ 前一个命令的最后一个命令行参数shell脚本的选项(option) ...
Linux查看系统信息命令
- 博客分类:
- Linux
系统
# uname -a # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量
资源
...
if test -z `cat filename`
当filename为空或者只有一行没有空格的字符串的时候,一切正常,反之,则会报,诸如
: too many arguments,甚至是: binary operator expected之类的错误,参见了一下:http://www.ibm.com/developerworks/cn/linux/shell/bash/bash-2/index.html
filename中的空格回车等迷惑了
如果环境变量没放在双引号中,那么bash 认为条件中的自变量过多。可以用双引号将字符串自变量括起来消除该问题。请记住,养成将所有字符串自变量用双引号括起的 ...
sed -i 's/abc/xxx/g' file
abc修改前的字符串
xxx是修改后的字符串
file是要被修改的文件
例如:
我有一个文件是map_server
#!/bin/bash
# chkconfig: 2345 10 90
# description: Starts and Stops the MapServer.
DIRECTORY=xxxxxx
MAPSERVER_HOME=/usr/map/mapserver/$DIRECTORY
MAP_START=$MAPSERVER_HOME/startMap.sh
MAP_STOP=$MAPSERVER_HOME/shut ...
/usr/local/bin/python2.6 xxx.py [参数]
或 python xxx.py [参数]
用SHELL 写了一个简单的例子 发生如下错误
-bash: ./test.sh: /bin/bash^M: bad interpreter: No such file or directory
VI打开文件,没发现任何问题,
把/bin/bash改成/bin/sh
-bash: ./test.sh: /bin/sh^M: bad interpreter: No such file or directory
依然报错,脚本内容在VI下没有任何问题,仔细一看错误消息,^M..明显在第一行末尾被加入了个^M,
这种情况应该有两种原因
1.在WIN底下用文本编辑工具修改过参数变量,在保 ...
glob模块是最简单的模块之一,内容非常少。用它可以查找符合特定规则的文件路径名。
跟使用windows下的文件搜索差不多。查找文件只用到三个匹配符:"*", "?", "[]"。"*"匹配0个或多个字符;"?"匹配单个字符;"[]"匹配指定范围内的字符,如:[0-9]匹配数字。
glob.glob
返回所有匹配的文件路径列表。它只有一个参数pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径。下面是使用glob.glob的例子:
impor ...
urllib模块提供的上层接口,使我们可以像读取本地文件一样读取www和ftp上的数据。每当使用这个模块的时候,老是会想起公司产品的客户端,同事用C++下载Web上的图片,那种“痛苦”的表情。我以前翻译过libcurl教程,这是在C/C++环境下比较方便实用的网络操作库,相比起libcurl,Python的urllib模块的使用门槛则低多了。可能有些人又会用效率来批评Python,其实在操作网络,或者在集群交互的时候, 语言的执行效率绝不是瓶颈。这种情况下,一个比较好的方法是,将python嵌入到C/C++中,让Python来完成一些不是核心的逻辑处理。又扯远了,废话少说,开始urllib之旅吧 ...
xml.sax.saxutils模块里面包含了很多在使用SAX应用程序都可能用到的
有用类和程序,不管是基础类还是直接使用的方法。
escape(data[,entities])
避开一个string数据里面的“&”,“<”,“>”字符串。
你同样可以避开其他的字符串,你只需要传一个通过可选的参数entities
传一个字典给它就行。字典的键,值都必须是字符串;每一个
键都会被它对应的值替换。
unescape(data[,entities])
不忽略string里面的"&","<& ...
在程序中使用配置文件来灵活的配置一些参数是一件很常见的事情,配置文件的解析并不复杂,在Python里更是如此,在官方发布的库中就包含有做这件事情的库,那就是ConfigParser,这里简单的做一些介绍。
Python ConfigParser模块解析的配置文件的格式比较象ini的配置文件格式,就是文件中由多个section构成,每个section下又有多个配置项,比如:
[db]
db_host=127.0.0.1
db_port=3306
db_user=root
db_pass=password
[concurrent]
thread=10
processor=20 ...
*args(实际上,*号后面跟着变量名)语法在Python中表示传递任意的位置变量,当你使用这个语法的时候(比如,你在定义函数时使用),Python将这个变量和一个元组绑定,并保留所有的位置信息, 而不是具体的变量.当你使用这个方法传递参数时,变量可以是任意的可迭代对象(其实可以是任何表达式,只要返回值是迭代器).
**kwds语法在Python中用于接收命名参数.当你用这个方式传递参数时,Python将变量和一个dict绑定,保留所有命名参数,而不是具体的变量值.当你传递参数时,变量必须是dict类型(或者是返回值为dict类型的表达式).
vi编辑器是所有Unix及Linux系统下标准的编辑器,介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。
在所有的命令执行前,先按Esc
1、vi的基本概念
基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:
1) 命令行模式command mode)
控制屏幕光标的移动 ...
项目需要用https与服务器进行连接,获取系统需要的一些配置参数。以前是用http进行连接的,客户端代码比较简单,直接使用URL类进行连接并获取输入流即可。试着在浏览器中输入相应的https连接地址,提示证书确认,确认以后就访问到内容了。
改成https以后碰到了一些问题。原以为Java可能已经封装好了,所以把直接把原来的http连接改成https,结果抛出异常:java.lang.UnsupportedClassVersionError: test/url/URLTest (Unsupported major.minor version 49.0)。查了一下,是JVM不支持这个协议( ...
这个文件是eclipse的插件,只要copy到eclipse的plugins文件夹中就行了,如果第一次不行,把
eclipse中的configuration文件夹下面的org.eclipse.update文件夹下面的platform.xml文件删除就好了,这个文件是eclipse启动的时候自动生成的。看window-preference里面有了fat jar preference就行了,导出jar包的时候
选择export - other - fat jar explorer就行了,很好用的。
改下文件关联就可以
方法:
开始->运行
command.com
这时会出来一个DOS窗口
键入
assoc .exe=exefile 回车
ftype exefile="%1" %* 回车