Linux指令学习(续)

一、shell编程

     shell类似于windows的bat批处理文件.shell可以理解为是指令与Linux内核之间的中间层.它的常用的分类有:

Bourne    /bin/sh  国内使用 ; C   /bin/csh ; Kom   /bin/ksh 欧洲使用.

      shell命令:

            1. env  显示当前操作系统环境变量

            2. chsh -s 新的shell(如:/bin/csh )     修改shell 回车(改后指令集会发生变化)

            3. history [int]   显示历史使用的指令(默认最多800条)  如history 5  最近使用的5个指令.

            4. !   直接运行历史的指令.例: !5 会执行历史的第5条指令.  !ls 立即执行最后ls打头的指令

            5.  ping和tracert可以查看网关和IP等信息. ifconfig查看Linux的IP情况

            6. setup 进入管理设置界面.主要可修改防火墙,打印,网络等配置信息.在进入网络后按"空格"表示自动.按"Tab"则进入下方的自定义配置.在修改后需输入  /etc/rc.d/init.d/network restart  指令使其生效.

            7. ifconfig eth0 IP地址  临时性的设置网络IP地址   ifconfig eth0 network X.X.X.X  临时设置子网掩码

            9. echo ${变量名}   unset 变量名   调用临时变量   注销临时变量

           10. read  变量名  等待用户输入,并将值赋予变量内.

           11. declare [-aixr] 变量名   声明带有类型的变量名  a-arr 数组  i-integer 数字   x-export  与export一样将变量变为环境变量,使得其他进程可见.  r-readonly  只读   ***数组使用为 数组名[index]  与java一致

           12. alias/unalias 建立注销别名    alias 别名='ls -l | more' 就表示输入别名就跟打后面的命令式一样的.

    

二、RPM包

   它是一种互联网下载包的打包及安装工具,它生成.rpm的文件

         1. rpm -qa 查询所有rpm包文件.a表示all 可以-q mysql查询指定的rpm包.

         2. rpm -ivh rpm包全路径   i=install安装 v=verbose提示  h=hash 进度条

         3. rpm -e 包名  删除指定的rpm包   -u是升级

**samba服务是linux下与windows共享文件的包.**

         4. rpm -q samba  查看是否安装samba服务

         5. cat /etc/passwd | mksmbpasswd sh > /etc/samba/smbpasswd  smbpasswd文件时samba的用户文件   smbpasswd  密码 设置密码

         6. service smb start/stop/restart  samba的启动/停止/重启 指令

         7. 共享资源的文件配置  /etc/samba/smb.conf  可以在文件内配置

 

三、任务调度

      概念:指某个时间系统执行特定的某些指令或程序

      分类:1)系统工作:系统必须周而复始的运作(如:杀毒软件)

             2)个别用户工作:个别用户希望的操作(数据库备份等)

      指令:

             1.crontab -e 设置任务调度,改指令会进入一个文本在里面写任务调度

**一般情况都是设特定时间让系统做某些指令 如 0 14 * * * date > /etc/mytest.txt  这样系统会在每天的下午2点0分将系统时间写入mytest.  其中0 14 * * * 分别得含义是 分 钟 天 月  星期 .而*表示"每"的意思.当然date>...也可以用/etc/test.sh等可执行文件替代** 

            

**对于多个任务调度可以将多个都写在crontab -e内, 但是最好是写在可执行文件内(这便是shell编程,后缀为sh)**

              2. crontab -r 删除所有任务调度. -l 列出调度

 

四、进程:

   概念:每个执行文件及一个进程. (线程是进程的一部分,它肯定属于某一进程.且线程可看做轻量级的进程,它没有独立的地址空间.)

   指令:

          1. ps [-aux] 查看当前系统的所有进程  -a 查看终端的所有进程  -u  以用户格式显示进程   -x   显示后台进程运行的参数(注意: PID为1的为主进程,所有的其他进程都是他的子类)      pstree以树形显示进程

          2. kill 进程id   杀死进程(这个会考虑到进程是否重要).  -9 强制.

          3. top 动态查看当前系统所有进程(ps为静态的查看,它只是看某个时间点的情况).  -d 10  每十秒跟新 ; 输入"U" 在输入用户名  按用户名查询  ;  输入"k" 再输入ID  杀死进程  ;

          4. netstat 显示当前网络状况  -a 显示所有   ping IP地址  网络监测.  -p  显示哪个进程在监听该端口

          5. traceroute 监测数据包网络传输过程.(route 路由)

 

四、过滤器:

     输入:过滤器的数据来源一般为stdin(0)表示为键盘   输出:过滤器的数据去向,默认为stdout(1)意味终端.  

     错误输出:stderr(2)默认为终端  . 重定向:改变上述的方向,主要就是文件的导入导出.  一般就为">"">>""<"和"<<"

如果右侧出错想输出错误可以"2>""2>>"等方式

 

五、压缩:

 1.    gzip - gunzip 后缀 .gz  查看压缩内容: gcat  ;   compress - uncompress  (太旧)  ;   bzip2 - bunzip2  后缀: .bz2  解压指令也可以 bzip -d ;  

 2.  tar 主要用于备份  tar cvf 备份文件.tar  被备份文件   (参数 c: 文件备份出来  v: 将过程输出  x: 解出备份  f: 必须在最后表示去备份的文件名   tar  xvf  出备份中解出文件)

 3.  = 设置临时变量 如:"a=boo"注意要无空格.  在获取变量时可以 echo ${a}即可获得.注意的是{a}表示a变量.

 

六、bash:

  1.  && 与   || 或  注释:实际上一般的认为&&是前面正确才执行后面.而||表示前面执行不成功则执行后面的命令

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值