工作总结(常用命令)

1、在 WEB 界面上显示调用脚本传入数值的内容:

$flag=`sudo /usr/local/asg/www/scripts/www-release install "$pVersion:$pUploadFile"`;

  获得 pVersion 和 pUploadfile 的内容,在上一行前面增加如下代码:

 

   echo "$pVersion:$pUploadFile"; 即可。

2、grep string -r * 使用

    查找string 字符串,在当前文件夹下那个文件中使用。

3、rpm常用工具

   1、查看安装包安装信息 rpm --scripts -qp XXXXXX > 1.log

   2、查看安装包信息     rpm -qpi XXX

   3、查找安装程序       rpm -qa |grep XXX

   4、软件包升级         rpm -Uvh XXX

   5、软件包安装         rpm -ivh XXX

   6、查找库在那个路径下   rpm -ql aaa | grep prel.so

4、cvs 常用命令

   首先 cvs环境配置  export CVSROOT=":psercer:[email protected]:/usr/cvsroot"

      1、查看文件状态     cvs  st   +文件名 

      2、查找分支             cvs  st   -v  +文件名  | grep 分支

      3、更新分支            cvs up  -r分支名

      4、查看本地与服务器有和不同   cvs up

      5、比较本地与服务器文件详细内容更改   cvs diff -u  > 1.patch  并且生成patch文件

      6、文件提交        cvs ci  +文件名

      7、增加新的文件 cvs add  +文件名

      8、新开分支步骤:

          1)先打基线标签

           cvs tag xxxxxxx(标签名)

          2)开分支

          cvs tag -r xxxx(标签名) -b xxxxx(分支名)   

                         

 

5、GDB 调试

   在更目录 /var/core 下保存文件崩溃的信息日志

   #gdb  +可执行文件 +错误信息日志

6、SIP 注册中一直出现注册失败 :

   tail -f /var/asg/log/event_log  命令查看系统的日志:

7、 PAE环境配置

        安装2个内核包文件 kernel-PAE-2.6.18-274.el5.i686.rpm

                                             kernel-PAE-devel-2.6.18-274.el5.i686.rpm

      

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/sda7
#          initrd /initrd-version.img
#boot=/dev/sda
default=1
timeout=1
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
password --md5 $1$Xfj8f$XStni/ImxcnvsvGzf.jwy0
title CentOS (2.6.18-274.el5PAE) //安装后增加的内核启动选项,将timeout 设置长点可以进行选择吧,
        root (hd0,0)
        kernel /vmlinuz-2.6.18-274.el5PAE ro root=/dev/sda7 noapic
        initrd /initrd-2.6.18-274.el5PAE.img
title CentOS (2.6.18-274.el5)
        root (hd0,0)
        kernel /vmlinuz-2.6.18-274.el5 ro root=LABEL=/ noapic
        initrd /initrd-2.6.18-274.el5.img


 8. sed 命令另类用法

 你用#的话 就很清楚 s#/dir/a#/dir/b# 不用转义

 

 9、文件拷贝

find /root/data -type f |grep -v "attachment" | xargs cp -ar --target-directory=/root/backup --parents
即将/root/data目录下除attachment目录外的所有文件备份至/root/backup目录

10、RPM打包时出现错误原因

   1)error: Installed (but unpackaged) file(s) found的解决方法

  

最近做RPM时遇到了如下问题

error: Installed (but unpackaged) file(s) found:
       /usr/share/images/nowebcamCIF.jpg

这个意思是说发现了制作RPM包的spec脚本中没有包含但又被安装的文件,那么不用多说,把这个文件添加在%files段就可以了,如下。

%files
/usr/share/images/nowebcamCIF.jpg

 

11 VIM 自动补齐插件IDE环境安装

12  dpkg具体用法

普通 dpkg 用法
    dpkg -i 安装一个Debian包裹文件,如你手动下载的文件。
    dpkg -c 列出的内容。
    dpkg -I 从中提取包裹信息。
    dpkg -r 移除一个已安装的包裹。
    dpkg -L 列出 安装的所有文件清单。同时请看 dpkg -c 来检查一个 .deb 文件的内容。

    dpkg -P
    完全清除一个已安装的包裹。和 remove 不同的是,remove 只是删掉数据和可执行文件,purge 另外还删除所有的配制文件。
    dpkg -s
    显示已安装包裹的信息。同时请看 apt-cache 显示 Debian 存档中的包裹信息,以及 dpkg -I 来显示从一个 .deb 文件中提取的包裹信息。
    dpkg-reconfigure
    重新配制一个已经安装的包裹,如果它使用的是 debconf (debconf 为包裹安装提供了一个统一的配制界面)。你能够重新配制 debconf 它本身,如你想改变它的前端或提问的优先权。例如,重新配制 debconf,使用一个 dialog 前端,简单运行:dpkg-reconfigure –frontend=dialog debconf (如果你安装时选错了,这里可以改回来哟:)

    echo ” hold” | dpkg –set-selections 设置的状态为 hlod (命令行方式)
    dpkg –get-selections “” 取得的当前状态 (命令行方式)

13 linux SVN用法

 windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说。主要说说linux下svn的使用,因为linux下大部分的操作都是通过命令行来进行,所以必须得掌握linux下svn的常用指令。当然linux下也有模仿TortoiseSVN的linux X程序,例如RabbitVCS,模仿程度很高,但很容易拖慢X,因此不推荐。
    (如果是第一次提交文件,很可能会出现“svn:'.'不是工作副本”,即当前目录不是工作副本,这个时候需要用到import:
eg:svn import . url)
1、将文件checkout到本地目录
svn checkout path(path是服务器上的目录)
例如:svn checkout svn://192.168.1.1/pro/domain
简写:svn co
2、往版本库中添加新的文件
svn add file
例如:svn add test.php(添加test.php)
svn add *.php(添加当前目录下所有的php文件) 
3、将改动的文件提交到版本库
svn commit -m “LogMessage“ [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)
例如:svn commit -m “add test file for my test“ test.php
简写:svn ci
4、加锁/解锁
svn lock -m “LockMessage“ [--force] PATH
例如:svn lock -m “lock test file“ test.php
svn unlock PATH 
5、更新到某个版本
svn update -r m path
例如:
svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
svn update -r 200 test.php(将版本库中的文件test.php还原到版本200)
svn update test.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)
简写:svn up 
6、查看文件或者目录状态
1)svn status path(目录下的文件和子目录的状态,正常状态不显示)
【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】M状态一般比较多
2)svn status -v path(显示文件和子目录状态)
第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。
注:svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的.svn中保留了本地版本的原始拷贝。
简写:svn st 
7、删除文件
svn delete path -m “delete test fle“
例如:svn delete svn://192.168.1.1/pro/domain/test.php -m “delete test file”
或者直接svn delete test.php 然后再svn ci -m ‘delete test file‘,推荐使用这种
简写:svn (del, remove, rm)
8、查看日志
svn log path
例如:svn log test.php 显示这个文件的所有修改记录,及其版本号的变化
9、查看文件详细信息
svn info path
例如:svn info test.php
10、比较差异
svn diff path(将修改的文件与基础版本比较)
例如:svn diff test.php
svn diff -r m:n path(对版本m和版本n比较差异)
例如:svn diff -r 200:201 test.php
简写:svn di 
11、将两个版本之间的差异合并到当前文件
svn merge -r m:n path
例如:svn merge -r 200:205 test.php(将版本200与205之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下)
12、SVN 帮助
svn help
svn help ci
——————————————————————————
以上是常用命令,下面写几个不经常用的
——————————————————————————
13、版本库下的文件和目录列表
svn list path
显示path目录下的所有属于版本库的文件和目录
简写:svn ls
14、创建纳入版本控制下的新目录
svn mkdir: 创建纳入版本控制下的新目录。
用法: 1、mkdir PATH…
2、mkdir URL…
创建版本控制的目录。
1、每一个以工作副本 PATH 指定的目录,都会创建在本地端,并且加入新增
调度,以待下一次的提交。
2、每个以URL指定的目录,都会透过立即提交于仓库中创建。
在这两个情况下,所有的中间目录都必须事先存在。 
15、恢复本地修改
svn revert: 恢复原始未改变的工作副本文件 (恢复大部份的本地修改)。revert:
用法: revert PATH…
注意: 本子命令不会存取网络,并且会解除冲突的状况。但是它不会恢复
被删除的目录 
16、代码库URL变更
svn switch (sw): 更新工作副本至不同的URL。
用法: 1、switch URL [PATH]
      2、switch –relocate FROM TO [PATH...] 
  1、更新你的工作副本,映射到一个新的URL,其行为跟“svn update”很像,也会将服务器上文件与本地文件合并。这是将工作副本对应到同一仓库中某个分支或者标记的方法。
  2、改写工作副本的URL元数据,以反映单纯的URL上的改变。当仓库的根URL变动
(比如方案名或是主机名称变动),但是工作副本仍旧对映到同一仓库的同一目录时使用
这个命令更新工作副本与仓库的对应关系。
17、解决冲突
svn resolved: 移除工作副本的目录或文件的“冲突”状态。
用法: resolved PATH…
注意: 本子命令不会依语法来解决冲突或是移除冲突标记;它只是移除冲突的
相关文件,然后让 PATH 可以再次提交。 
18、输出指定文件或URL的内容。
svn cat 目标[@版本]…如果指定了版本,将从指定的版本开始查找。
svn cat -r PREV filename > filename (PREV 是上一版本,也可以写具体版本号,这样输出结果是可以提交的)

dpkg vs rpm(大家一定喜欢这个,对我这种习惯了rpm的人来讲,很有用哦.
    * 列出系统中安装的软件包
          o rpm -qa
          o dpkg --list
    * 列出软件包信息
          o rpm -qi pkgname
          o dpkg --status pkgname
    * 列出一个包所安装的文件
          o rpm -ql pkgname
          o dpkg --listfiles pkgname
    * 列出本地包文件的信息
          o rpm -qpi file.rpm
          o dpkg --info file.deb
    * 列出本地包文件所含文件
          o rpm -qpl file.rpm
          o dpkg --contents file.deb
    * 安装本地包
          o rpm -i file.rpm
          o dpkg --install file.deb
    * 从系统中清除包
          o rpm -E pkgname
          o dpkg --purge pkgname
    * 查询文件归属
          o rpm -qf file
          o dpkg --search fil


19、apt-get update 失败修改:

  
修改dns:

配置文件地址 /etc/resolv.conf

使用编辑器打开

改为如下内容:
search localdomain
nameserver 202.96.128.86 希望修改成的DNS
nameserver 202.96.128.166 备用DNS

重启网络: sudo /etc/init.d/networking restart。即可

你可能感兴趣的:(SVN,gdb,rpm,cvs,dpkg)