红联Linux门户
Linux帮助

程序员在Linux下有用的终端命令

发布时间:2014-09-03 09:52:58来源:linux网站作者:zhuichao001

文件编码转换工具enca:

enca -L zh_CN -x UTF-8 file 将文件编码转换为"UTF-8"编码
enca -L zh_CN -x UTF-8 < file1 > file2 假如不想覆盖原文件可以这样


打开ISO文件:
mount -o loop test.iso /cdrom   将ISO文件挂载到cdrom文件夹中
umount /cdrom  取消挂载


修改默认启动的操作系统:
sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg_backup
sudo gedit /boot/grub/grub.cfg
找到 default 0,将0改成你其他系统的位置,位于第X项,就是修改成 X-1(从0开始数)。
不要执行 sudo update-grub,否则又会重置的。

安装软件时如果遇到有依赖包没有安装从而导致安装失败时,用 sudo apt-get install -f 来搞定。


查看历史命令记录方法:
使用history {$NUM}可以查看最近使用的$NUM个命令,默认为500;
1. ctrl+r出现提示:(reverse-i-search), 此时你尝试一下输入你以前输入过的命令,当你每输入一个字符的时候,终端都会滚动显示你的历史命令。当显示到你想找的合适的历史命令的时候,直接[Enter],就执行了历史命令。
2. 使用'!':
“梆,梆”:键入 !! (叫做“梆,梆”)来执行历史中的最后一项命令。
“梆 数字 ”:键入 ! 数字 (如 !302 )会执行命令历史文件中的第 302 项。
“梆 字串 ”:键入 ! 字串 (如 !rpm )会执行命令行中匹配该字串的最新近输出的命令。


Bash Shell 快捷键:
Ctrl + a - 跳到行首     Ctrl + e - 跳到行尾    Ctrl + k - 从光标处删除到行尾    Ctrl + l - 清屏,类似 clear 命令    Ctrl + w - 删除最后一个单词/参数

cp filename{,.bak}  这道命令把filename文件拷贝成filename.bak
其原理就在于bash对大括号的展开操作,filename{,.bak}
这一段会被展开成filename filename.bak再传给cp


CentOS开机自动运行程序的脚本:
有些时候我们需要在服务器里设置一个脚本,让他一开机就自己启动。方法如下:

cd /etc/init.d
vi youshell.sh   #将youshell.sh修改为你自己的脚本名编写自己的脚本后保存退出。
在编写脚本的时候,请先加入以下注释

#add for chkconfig
#chkconfig: 2345 70 30
#description: the description of the shell   #关于脚本的简短描述
#processname: servicename                    #第一个进程名,后边设置自启动的时候会用到说明:
2345是指脚本的运行级别,即在2345这4种模式下都可以运行,234都是文本界面,5就是图形界面X
70是指脚本将来的启动顺序号,如果别的程序的启动顺序号比70小(比如44、45),则脚本需要等这些程序都启动以后才启动。
30是指系统关闭时,脚本的停止顺序号。

给脚本添加上可执行权限:

chmod +x youshell.sh利用chkconfig命令将脚本设置为自启动

chkconfig --add servicename这样你的脚本就可以在开机后自动运行了。

另外,在RedHat里也可以使用这个方法来实现开机自启动。


chkconfig的使用方法

chkconfig(check config)

功能说明:检查,设置系统的各种服务。

语法:chkconfig

[--add][--del][--list][系统服务]或chkconfig[--level<等级代号>][系统服务][on/off/reset]

补充说明:这是RedHat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。

参数:

–add 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
–del 删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
–level<等级代号> 指定读系统服务要在哪一个执行等级中开启或关毕


1:chkconfig 命令也可以用来激活和解除服务。chkconfig –list 命令显示系统服务列表,以及这些服务在运行级别0到6中已被启动(on)还是停止(off)。

chkconfig –list

chkconfig –list httpd

httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off


2:chkconfig 还能用来设置某一服务在某一指定的运行级别内被启动还是被停运。譬如,要在运行级别3、4、5中停运 nscd 服务,使用下面的命令:

chkconfig –level 345 nscd off


3:由 xinetd 管理的服务会立即被 chkconfig 影响。譬如,如果 xinetd 在运行,finger 被禁用,那么执行了 chkconfig finger on 命令后,finger 就不必手工地重新启动 xinetd 来立即被启用。对其它服务的改变在使用 chkconfig 之后不会立即生效。必须使用service servicename start/stop/restart命令来重起服务。


第二种方法

编辑  /etc/rc.d/rc.local文件

格式为  程序名  程序路径

例如  a.sh  /home/a.sh