初学高级程序设计 shell编程

Alei777 2019-03-10 原文

初学高级程序设计 shell编程

  初学shell编程,遇到的一些问题和总结:

一、#!/bin/sh 为什么要在shell程序里要加这一行?

  首先在shell编程里面,“#”符号确实是一个注释符号,但是在这里绝对不是注释符号,是给的一个shell的路径,相当于是给的一个环境变量。如果没有加上这一句话,则程序执行会用默认的shell来解释执行,极有可能会报错。所以建议大家就把”#!/bin/sh当成C 语言的main函数一样,写shell必须有,以使shell程序更严密。

二、useradd 和 adduser的差别:

       在CentOs下useradd与adduser是没有区别的都是在创建用户,在home下自动创建目录,没有设置密码,需要使用passwd命令修改密码。并且会在/home下创建一个用户名的文件,而在Ubuntu下useradd与adduser有所不同:

      1、useradd在使用该命令创建用户是不会在/home下自动创建与用户名同名的用户目录,而且不会自动选择shell版本,也没有设置密码,那么这个用户是不能登录的,需要使用passwd命令修改密码。

      2、adduser在使用该命令创建用户是会在/home下自动创建与用户名同名的用户目录,系统shell版本,会在创建时会提示输入密码,更加友好。

三、是否在shell编程中都需要加”;”结尾?

  在shell程序中的语句,“;”用于多个语句之间的分隔符,如果只有一条语句不用加“;”,如果语句在末尾也不用再加”;”。

正在学习,待更新!由于初学shell,所以有很多地方了解的还不是很透彻,这些也是我查找各个博客和课本后的总结,如果有错误请及时留言,谢谢!

 

 

发表于 2019-03-10 16:23 雷雷提 阅读() 评论() 编辑 收藏

 

版权声明:本文为Alei777原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/Alei777/p/10505746.html

初学高级程序设计 shell编程的更多相关文章

  1. 2. Shell编程第二讲

    2. Shell编程第二讲 (1) 条件测试: test   [   命令 test 或 [ 可以测试一个条件 […]...

  2. 1. Shell编程第一讲

    1. Shell编程第一讲 (1)shell 历史:   Shell的作用是解释执行用户的命令,用户输入一条命 […]...

  3. Shell编程进阶篇(完结)

       1.1 for循环语句      在计算机科学中,for循环(英语:for loop)是一种编程语言的迭 […]...

  4. Shell编程中变量用法

    1. 变量替换 语法 说明 ${变量名#匹配规则} 从变量开头进行规则匹配,将符合最短的数据删除 ${变量名# […]...

  5. 4.shell编程-文本处理三剑客之sed

    4.shell编程-文本处理三剑客之sed 4.1.sed的选项  sed,流编辑器。对标准输出或文件进行逐行 […]...

  6. Shell编程基础篇

    1.1 前言 1.1.1 为什么学Shell Shell脚本语言是实现Linux/UNIX系统管理及自动化运维 […]...

  7. shell编程(一):功能、执行、基础

    1.shell的功能 (1)自动化批量初始化系统:对N台系统初始化(装系统时对系统的时区、yum源、软件包的更 […]...

  8. Shell编程基础篇-下

    1.1 条件表达式 1.1.1 文件判断 常用文件测试操作符 常用文件测试操作符 说明 -d文件,d的全拼为d […]...

随机推荐

  1. Oracle 11g数据库的创建

    由于是自己自学Oracle,如果有问题,请大家指出,谢谢! Oracle提供了DBCA来创建数据库,对于初学者 […]...

  2. JQuery 权限管理界面

      <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 […]...

  3. iOS 极光推送 如何点击推送消息跳转页面

    iOS 极光推送 如何点击推送消息跳转页面 2018-01-27 16:41 by 无言soul, ̷ […]...

  4. Invalid component name: "pipForm'". Component names should conform to valid custom element name in html5 specification.

    export default {name:'asd' }name写错了,name需要是字符串...

  5. 面临网络安全危机时需要思考的20个问题

    我们可以从一次次网络安全危机中学到很多非常重要的教训,即便是那些并非实际发生的,而是比现实更具虚构色彩的危机亦 […]...

  6. Axure9汉化和破解

    安装Axure9 安装Axure,下载对应版本的Axure汉化包 Axure RP 9最新版软件及汉化包下载 […]...

  7. FlashFXP列表参数错误解决方法

    ftp连接端口默认是21,在其他的情况下为2121等,账户和密码,IP和端口都正确登陆的情况下,FlashFX […]...

  8. STL中erase()的用法

    erase()是STL提供的容器中比较常用的方法之一,它的功能是删除容器中的某些元素,其中它的函数原型如下: […]...

展开目录

目录导航