欢迎
asky100
加入本站!
免费注册
用户登陆
汇款方式
汇款确认
产品报价
联系我们
帮助中心
加入收藏
设为首页
会员体系
申请VIP
网站首页
光盘超市
软件下载
技术文章
专题
用户中心
VIP会员
技术论坛
网站留言
娱乐中心
卓越资源
今天是:2008年11月20日 星期四 您现在位于:
首页
→
技术文章
→
让Linux命令加速
[
铁杵终能磨成针—记199元的Office
让Linux命令加速
作者:毛希增 出处:赛迪博客 更新时间: 2007年02月12日
    Linux中大多数命令只做一件事,因此,通过Shell脚本语言把各种程序粘合起来使用时,就能完成复杂的任务。本文充分利用功能强大,但简单易学的小工具,给出一些实际问题的解决方案,希望使Linux更实用、更好用。 
    让命令“说话” 
    几乎每个Linux命令都有很多选项,允许使用者根据需要灵活地定制。但这给初学者带来诸多不便,一是学起来麻烦,二是容易遗忘,需要时不得不重新再来。 
    那么有没有办法让命令自己“说话”呢?通过Shell脚本语言可以给命令加上友好的“面孔”。示例如下: 
::::::::::::::
cname.sh
::::::::::::::
echo 
"
Please input file name:
"
read old
echo 
"
Please input new name: 
"
read new
mv $old $new
 
    上面代码中,mv的命令格式为:
    mv 原名字 新名字 
    echo命令格式为: 
    echo 字符串 
    read从标准输入中读入一个字符串,并存入后边的变量中,其命令格式为: 
    read 变量名 
    程序执行时显示帮助信息,提示输入相应的参数,最后通过简单的变量替换,完成改名任务这个程序。虽然只有5行,却改变了命令的行为方式,大大地增强了mv的易用性。在实际应用中,读者可根据需要替换这个小程序的命令。 
    处理多个文件 
    在前面的基础上,如果想给一批文件改名的话,那么下面这个例子就更有实用价值了。 
::::::::::::::
mvs.sh
::::::::::::::
for s in $*; do
    echo 
"
File: $s
"
    echo 
"
Please input new name: 
"
    read t
    mv $s $t
    if [ $? -eq 0 ]; then
 echo 
"
OK!^o^
"
    else
 echo 
"
Error!
"
    fi
done
 
    通过for循环,“命令序列”依次处理文件列表中的所有文件。$*代表所有命令行参数,这样文件列表就可以通过命令参数指定。后面的if语句测试命令的执行状态,0代表执行成功。简单部署1之后,键入“mvs .jpg”就可以轻松地批量给文件改名了。 
    部署方案 
    程序编制完成,需要仔细部署,以使安装和使用方便。 
    ◆在用户主目录下新建bin目录(如果已建立就跳过): 
    mkdir ~/bin 
    ◆把~/bin添加到PATH变量,在用户主目录下的.bashrc文件中添加下面几行: 
    PATH=~/bin:$PATH
    export PATH
    ◆把测试好的程序移至bin目录,更改成简单易记的名字,并设置文件属性: 
    cp mvs.sh ~/bin/mvs
chmod 755 ~/bin/mvs 
    以后,就可以直接使用mvs给一批文件改名字了。 
    mvs *.jpg 
    本文所举例子虽然简单,但勾画出了一些比较通用的框架,根据需要稍加修改就可以解决很多比较复杂的任务.
 
(本文已被浏览 2521 次)
发布人:
sdccf
→ 推荐给我的好友
上篇文章:
让Linux使用和Windows接近
下篇文章:
Ubuntu Linux优化策略
相关文章:
很强悍!Ubuntu也能玩Photoshop CS2
35款Linux发行版名字的含义
Sybase Ase 12.5 for Linux全攻略
SYBASE 12.5 for Linux安装
红旗软件宣布推出支持英特尔MID的Midinux操作系统
使用Windows Vista引导Linux
Linux下的绘图程序-Gogh
Linux DOSBOX 运行DOS游戏
VMware 6 Linux 版本下载安装配置编译序列号注册码
2007年八款最令人上瘾的Linux游戏
Linux系统下的攻击软件全接触
远程网络安装RedHat Linux系统的方法
六脉神剑捍卫企业 Linux系统(三)
六脉神剑捍卫企业 Linux系统(二)
在Linux高负载下mysql数据库彻底优化
VMware下编译Linux内核(2.4.32)全过程
Linux截图与考屏方法总结
基于网络的RedHat Linux无人值守安装
用比较法学Linux基本命令
Linu系统管理新手要了解的十个知识点
相关搜索
查看百度中关于
让Linux命令加速
的更多内容
查看google中关于
让Linux命令加速
的更多内容
文章分类
|
操作系统
|
SCO_UNIX
Sun_Solaris
IBM_AIX
HP_UX
Linux
BSD
Tru64_UNIX
通用UNIX知识
Windows
Minix
|
程序设计
|
Shell编程
C/C++
汇编
PHP
JAVA
Perl
Python
ASP/HTML
XML
中间件
|
数据库
|
Oracle
Informix
Sybase
Fox
DB2
SQL
MySQL
PostgreSQL
|
网络应用
|
网络应用
|
计算机硬件
|
计算机主机
打印机
路由器
交换机
终端
磁带机
MO
刻录机
终端服务器
调制解调器
文章评论
→
评论内容
(点击查看)
共
0
条评论,每页显示
5
条评论
浏览所有评论
(没有相关评论)
→
发表我的评论
您的姓名:
您的Email:
评论内容:
250字内
发表评论:
发表评论须知 →
尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法;
本站有权保留或删除您发表的任何评论内容;
关于我们
┋
网站留言
┋
网站地图
┋
友情链接
┋
与我在线
┋
汇款确认
┋
管理
┋
TOP
Linux.Unix爱好者家园
http://www.unix-cd.com/
联系我们:sdccf@163.com
腾讯QQ: 7644599
备案序号:鲁ICP备05000455号
Copyright (c) 2001-2008 Unix-cd.com. All Rights Reserved.