Skip to content
  • Categories
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Flatly)
  • No Skin
Collapse

Odoo 中文社区

  1. Home
  2. Categories
  3. Linux使用及技巧
  4. Linux每日一讲---Shell纳须弥2

Linux每日一讲---Shell纳须弥2

Scheduled Pinned Locked Moved Linux使用及技巧
3 Posts 2 Posters 12.0k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    D Offline
    digitalsatori
    管理员
    wrote on last edited by
    #1

    == 本贴欢迎转载,转载请注明出处==

    今天再看到这些个每日一讲的帖子就感觉搞笑。信誓旦旦讲了三天,大家还在云里雾里之时,老兄我不知云游到什么地方去了。接下去帖子要改名为每年一讲了。好了,闲话少叙,总之,“我,....(不是胡汉三啦), 又回来了”。

    上一讲我们讲到,Shell是Linux操作系统的一部分,但是又与操作系统的其他部分相分离,所以我们可以任意选择Shell家族中一堆名字古怪的兄弟('ksh','zsh','csh','tcsh','bash' ...) 为我们打工。它们运行于终端环境中,主要任务解释输入的命令交由操作系统执行。其实,我们主要讨论的bash这位老兄,就比较有文化了。它不仅充当翻译的角色--向操作系统解释我们输入的命令,同时他还是一位语言大师--bash是一门编程语言。

    我曾经在终端里鼓捣的时候,我的一个朋友很鄙视的说:“你丫现在还在玩DOS?”是的,Shell的运行环境和方法看起来与DOS相似,那么区别是什么呢?实际上就是上面讲过的:1、与系统其它部分想分离,可自由替换,2、更灵活,强大的命令支持,3、不仅仅是命令解释,还是一个编程语言(不是dos下简单的批处理)。我回答朋友,“这个DOS有点意思”

    那么我们如何才能使用Shell呢?Linux的终端环境下都默认运行着Shell程序。所以,当你启动的Linux直接进入的是文本模式,就是黑乎乎没有图形的界面,你就在壳(Shell)里了;你也可以用CTRL+ALT+F1~F6这几个组合键进入Linux的虚拟终端从而钻到那个壳里,当然也可以在X图形界面下启动一个模拟终端窗口,窥探壳里的世界。

    在bash的Shell环境中我们最熟悉看到的显示:

    tony@tony-desktop:~$ 
    

    这个就是bash一般情况下出现的提示符。其含义为:
    tony -- 就是目前使用shell的用户名(本人自称tony所以它显示的是tony,不要捧着你的电脑来问我为什么你的电脑这里叫Sashimi,如果你请吃Sashimi的话,我会告诉你的:P )
    tony-desktop --就是目前使用的电脑名称
    ~表示tony用户的主目录,一般为: /home/tony
    所以tony用户要进入目录:/home/tony可以使用命令:

    cd /home/tony
    

    更方便的你也可以使用:

    cd ~
    

    $符号通常表示一般用户,如果是root用户,这里就会变成#
    当然提示符是完全可以自己定义的,比如你可以插入日期时间信息,改变显示的符号等等,以后有空来讨论。

    Bash是一个很体贴的朋友,举两个例子:
    1、自动补全
    比如在输入很长的目录时,你可以输入目录名称的一部分然后按Tab键,它会自动补全该目录的名称。如果你要进入/opt/ThisisaVeryLongDirectoryName/,你可以只输入 cd This[TAB]。(方括号中的内容不需要你输入,意思是按一下TAB键)你看,系统是不是自动把你的命令补全为:

    cd /opt/ThisisaVeryLongDirectoryName/ 
    

    灵活的运用自动补全可以让你更快速的访问目录和执行命令。
    2、历史命令
    当你经常性的执行某些命令,你可以不必重新输入,按向上,向下的箭头来翻阅以前执行的命令,然后按回车键执行。这对于重复执行一些很长的指令是很节省命令输入时间的。

    以上的这两个特性在bash中可以有更方便的配置和复杂的应用,这要等我们熟悉了系统之后再研究。

    在上一讲里,我们提到Shell强大到当你不知道你自己是谁的时候,通过输入whoami命令,它会告诉你。那么在本讲的最后,我想让你了解,当你在Linux的迷宫里“迷路”的时候,你可以输入pwd,让Linux告诉你现在身处何地。
    pwd 意思是 print working directory(显示当前工作目录),好了,这下咱再也不会迷路了。

    【上海先安科技】(tony AT openerp.cn)

    1 Reply Last reply
    0
    • 卓忆卓 Offline
      卓忆卓 Offline
      卓忆
      wrote on last edited by
      #2

      天上方一日,人间已一年,
      现代物理学证明,还有若干年一日的 星球 🙂

      好文

      恬淡

      1 Reply Last reply
      0

      Hello! It looks like you're interested in this conversation, but you don't have an account yet.

      Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

      With your input, this post could be even better 💗

      Register Login
      Reply
      • Reply as topic
      Log in to reply
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes


      • Login

      • Don't have an account? Register

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Tags
      • Popular
      • Users
      • Groups