《Red Hat Linux 用户基础》



  • 可以使用Ctrl+Alt+F1Ctrl+Alt+F6的六组组合键在六个虚拟控制台之间切换
  • 可以使用Ctrl+Alt+F7切换至默认的X服务器
  • who命令可以列出当前登录的用户及其登录方式。


  • Linux内核是一个操作系统,为进程提供运行环境
  • Shell是一个交互式进程,让用户指定要运行的其它进程
  • ps命令列出了从单个终端上启动的进程。ps aux命令提供了当前在机器上运行的所有进程的详细列表。


  • Linux目录树的基础是一个叫做“/”的目录,被称为“根目录(root directory)”。
  • ls命令用来列出目录内容。
  • cat命令用来检查文件内容。
  • 用shell命令行的“>”字符可以把命令的输出从终端重定向到文件。
  • 用户的主目录是用户可以创建新文件的几个地点之一。

  • 任何一个命令行的第一词都是要运行程序的名称。
  • 可用命令行选项(通常是任选的)修改命令的行为,命令行选项总是一个或两个连字符开头(-或--)。
  • 跟随命令和任何命令行选项词叫做命令的参数(argument)。
  • 命令通常支持命令行选项“--help”、“-h”、“-?”,这些命令行选项给出如何使用命令的用法概要。



管理终端


  • 各种控制键组合,如ctrl+cctrl+dctrl+z等,有助于从终端上管理进程。
  • 通常用reset命令将终端设置恢复为正常状态。
  • 表—linux终端控制组合键
  •                                                组合键                                         符号名称                                   约定使用
    Ctrl+CSIGINT非常规中断——终止前台进程
    Ctrl+DEOT输入完成的正常信号
    Ctrl+GBEL终端声效
    Ctrl+HBS后退一格——删除前一个字符
    Ctrl+JLF换行——与Enter键功能相同
    Ctrl+LFF换页——使bash清屏,使其他基于屏幕的程序“刷新”当前屏幕
    Ctrl+Q
    解锁终端显示
    Ctrl+S
    锁住终端显示
    Ctrl+UNAK删除当前行
    Ctrl+ZSIGSTOP挂起前台进程

    表—终端设备名称
    名称设备使用
    ttyn虚拟控制台使用Ctrl+Alt+Fn组合键访问
    ttySn串口端口设备连接到串行端口上的调制解调器或VT100类型。UNIX中的ttyS0等于DOS中的COM1,ttyS1等于DOS中的COM2,依次类推
    pts/n伪终端一个模拟终端,经常被X图形环境中的终端窗口或起始于网络的Shell(如telnet和ssh)使用。伪终端不能直接与物理设备相连
    :0X服务器X服务器并不是真正的终端。当用户使用X图形环境登录管理器登录时,其终端经常被列为X服务器本身



用户和组

  • su命令让用户切换用户(switch user) ID。

  • su命令通常用连字符调用, 例如su - prince ,指明用户prince应该作为新用户有效登录。su -  默认登录root。

  • newgrp命令,也称作sg,让用户切换主要组(switch primary group) ID。 

su 命令行选项

选项作用
使Shell成为登录Shell
-c

运行指定命令,然后返

例:su -c ‘yum list‘ - root

su -c ‘ls /root‘ -

-m,-p保持当前环境
-s,--shell=SHELL用SHELL作为新用户的Shell


文件归档


  •   tar 命令用于创建、列出、抽取归档文件。
  • tar 命令行选项
  • 选项作用
    -c, --create创建归档文件
    -x,-extract释放归档文件
    -t,--list列出归档文件内容
    -f指定操作的文件
    -C, --diretory=DIR进入DIR目录
    -P,--absolute-reference不剥离起始路径的/
    -v,--verbose列出正在处理的文件
    -z,--gzip使用gzip压缩
    -j,--bizp2使用bizp2压缩

[GARY@localhost ~]$ tar czvf bashdoc.tgz /usr/share/doc/bash-4.1.2
tar: Removing leading `/‘ from member names
/usr/share/doc/bash-4.1.2/
/usr/share/doc/bash-4.1.2/COPYING
[GARY@localhost ~]$ cd /usr/share/doc/bash-4.1.2/
[GARY@localhost bash-4.1.2]$ ls
COPYING
[GARY@localhost bash-4.1.2]$ cd ~
[GARY@localhost ~]$ ls
bashdoc.tgz  Documents  Music      Pictures  Templates
Desktop      Downloads  MyProgram  Public    Videos
[GARY@localhost ~]$ tar xvf bashdoc.tgz
usr/share/doc/bash-4.1.2/
usr/share/doc/bash-4.1.2/COPYING
[GARY@localhost ~]$ ls
bashdoc.tgz  Documents  Music      Pictures  Templates  Videos
Desktop      Downloads  MyProgram  Public    usr
[GARY@localhost ~]$ tar czvf bashdoc2.tgz -C /usr/share/doc/ bashi-4.1.2(注意bashi-4.1.2前面有个空格,等同于/usr/share/doc/bashi-4.1.2  .
tar: bashi-4.1.2: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors
[GARY@localhost ~]$ tar czvf bashdoc2.tgz -C /usr/share/doc/ bash-4.1.2
bash-4.1.2/
bash-4.1.2/COPYING
[GARY@localhost ~]$ ls
bashdoc2.tgz  Desktop    Downloads  MyProgram  Public     usr
bashdoc.tgz   Documents  Music      Pictures   Templates  Videos
[GARY@localhost ~]$ tar xvf bashdoc2.tgz
bash-4.1.2/
bash-4.1.2/COPYING
[GARY@localhost ~]$ cd /usr/share/doc
[GARY@localhost doc]$ tar cvf ~/bashdoc3.tgz bash-4.1.2/
bash-4.1.2/
bash-4.1.2/COPYING
[GARY@localhost doc]$ cd ~
[GARY@localhost ~]$ ls
bash-4.1.2    bashdoc3.tgz  Desktop    Downloads  MyProgram  Public     usr
bashdoc2.tgz  bashdoc.tgz   Documents  Music      Pictures   Templates  Videos
[GARY@localhost ~]$ tar xvf bashdoc3.tgz
bash-4.1.2/
bash-4.1.2/COPYING
[GARY@localhost ~]$ tar xvf bashdoc2.tgz
bash-4.1.2/
bash-4.1.2/COPYING
[GARY@localhost ~]$ tar xvf bashdoc.tgz
usr/share/doc/bash-4.1.2/
usr/share/doc/bash-4.1.2/COPYING


文件查找



  • locate命令利用数据库根据文件名快速定位系统上的文件。
  • find命令实时、递归查找系统上的文件。
  • find命令可以根据i-节点信息查找文件。
  • find命令可对文件执行任意命令。
locate命令根据提供的模式查找文件并打印找到的结果。因为它依靠每天更新的数据库文件来查找,所以它的速度是两者中最快的。缺点是,它不能查找最近一天内新增的文件,或者会报告因最近删除而失效的文件。
[GARY@localhost ~]$ locate hello.c
/home/GARY/MyProgram/hello.c
/usr/share/doc/syslinux-4.02/sample/hello.c
/usr/share/doc/syslinux-4.02/sample/hello.c32
find命令可以根据文件名来查找文件,当然也可以根据所有者、属组、权限、最后修改日期等其他条件查找文件。因为它是实时搜索,所以速度上较locate命令慢些,但灵活性更大。
find <起始目录> <搜索条件> <动作>
默认的起始目录是当前目录(.),默认的搜索条件是所有文件,默认的动作是打印文件名;不加参数调用find命令会列出当前目录下的所有文件。如果仅跟一个目录参数,那么会列出那个目录的所有文件。
find命令的搜索条件
选项说明
-emptyFile是空文件或空目录
-group gnameFile的组所有者是gname
-inum nFile的i-节点号是n
-links nFile的链接数是n
-mmin nFile是n分钟之前修改的
-mtime nFile是n天之前修改的
-name patternFile与pattern模式匹配
-newer filenameFile最后修改时间在filename文件最后修改时间之后
-perm modeFile的权限就是mode指定的权限
-perm -modeFile具有mode指定的权限
-perm +modeFile设置了mode指定的权限其中至少之一
-size nFile的大小为n
-type cFile是C类型文件,C可以是f(普通文件)、d(目录)、l(软链接)
-user unameFile的所有者是uname
注:其中的选项如果接受数字参数,那么都遵循如下规则:+3(大于3),-3(小于3)、3(恰好是3)。
        如果指定多个条件,那么默认情况下文件需要满足所有的条件。如果条件之间用-or选项分隔,那么只要满足一个条件即可。条件之前加-not表示取反。

指定动作
选项动作
-exec command;对匹配文件执行command,用{}表示匹配的文件
-ok command;与-exec作用相同,但是提示确认每个文件的操作
-ls按ls -dils格式输出

重定向


文件描述符:
                0-代表一个程序的标准输入
                1-标准输出
                2-标准错误输出
使用>>操作符将输出内容附加到指定文件的尾部。




tar


tar命令行选项
选项作用
-c, --create创建归档文件
-x, --extract释放归档文件
-t, --list列出归档文件内容
-C,--directory=DIR进入DIR目录
-P,--absolute-reference不剥离起始路径的/
-v,--verbose列出正处理的文件
-z,--gzip使用gzip压缩(解压缩都用这个选项)
-j,--bizp2使用bizp2压缩
-f, --file=ARCHIVE指定归档的文件名

tar经常与gzip连用,后缀名为.tar.gz 能常也缩写成.tgz
[GARY@localhost Documents]$ tar xzf dnvim-code.tgz
[GARY@localhost Documents]$ ls
code  dnvim-code.tgz  file  file-1  file-2  rhyme
[GARY@localhost Documents]$ tar tf dnvim-code.tgz
code/
code/auto_complete/
code/copy_and_paste/
code/ctags/
code/customizations/
code/essential.vim
code/ex_mode/
code/files/
code/global/
code/grep/
code/insert_mode/
code/jumps/
code/macros/
code/motions/
code/normal_mode/
code/patterns/
code/quickfix/
code/search/
code/spell_check/
code/substitution/
code/the_vim_way/
code/visual_mode/
code/visual_mode/chapter-table.txt
code/visual_mode/fibonacci-malformed.py
code/visual_mode/fibonacci.py
code/visual_mode/indentation-fix.html
code/visual_mode/list-of-links.html
code/visual_mode/sprite.css
code/the_vim_way/0_mechanics.txt
code/the_vim_way/1_copy_content.txt
code/the_vim_way/2_foo_bar.js
code/the_vim_way/3_concat.js
code/substitution/buttons.js
code/substitution/fudge.js
code/substitution/get-rolling.txt
code/substitution/headings.html
code/substitution/mixin.js
code/substitution/qargs.vim
code/substitution/refactor-project/
code/substitution/subscribers.csv
code/substitution/who-bites.txt
code/substitution/refactor-project/about.txt
code/substitution/refactor-project/author.txt
code/substitution/refactor-project/extra/
code/substitution/refactor-project/license.txt
code/substitution/refactor-project/extra/praise.txt
code/substitution/refactor-project/extra/titles.txt
code/spell_check/moustache.txt
code/spell_check/mustache.txt
code/spell_check/spellfile.vim
code/spell_check/yoru-moustache.txt
code/search/escape-register.vim
code/search/headings.md
code/search/langs.txt
code/search/quoted-strings.txt
code/search/tag-heirarchy.rb
code/quickfix/err-fizz-1
code/quickfix/err-fizz-2
code/quickfix/fizzbuzz-errors
code/quickfix/fizzbuzz.js
code/quickfix/format_vimrc
code/quickfix/ftplugin.javascript.vim
code/quickfix/wakeup/
code/quickfix/wakeup/Makefile
code/quickfix/wakeup/wakeup.c
code/quickfix/wakeup/wakeup.h
code/patterns/color.css
code/patterns/dynamic-escape.vim
code/patterns/escape-problem-characters.vim
code/patterns/excerpt-also-known-as.txt
code/patterns/search-url.markdown
code/patterns/springtime.txt
code/patterns/urls.txt
code/patterns/visual-star.vim
code/patterns/windows-paths.markdown
code/normal_mode/sprite.css
code/normal_mode/the_end.txt
code/motions/cursor-maps.vim
code/motions/disable-arrowkeys.vim
code/motions/parentheses.rb
code/motions/search-haiku.txt
code/motions/template.js
code/macros/broken-lines.txt
code/macros/consecutive-lines.txt
code/macros/incremental.txt
code/macros/mixed-lines.txt
code/macros/rc.vim
code/macros/ruby_module/
code/macros/ruby_module/animal.rb
code/macros/ruby_module/banker.rb
code/macros/ruby_module/frog.rb
code/macros/ruby_module/person.rb
code/jumps/practical_vim/
code/jumps/practical_vim.rb
code/jumps/practical_vim/core.rb
code/jumps/practical_vim/jumps.rb
code/jumps/practical_vim/more.rb
code/jumps/practical_vim/motions.rb
code/insert_mode/auto-complete-1.tutor
code/insert_mode/auto-complete-2.tutor
code/insert_mode/auto-complete-3.tutor
code/insert_mode/auto-complete.tutor
code/insert_mode/back-of-envelope.txt
code/insert_mode/practical-vim.txt
code/insert_mode/replace.txt
code/grep/department-store.txt
code/grep/goldrush.txt
code/global/episodes.html
code/global/example.txt
code/global/markdown.js
code/global/unsorted.css
code/files/.chapters
code/files/a.txt
code/files/b.txt
code/files/letters/
code/files/mvc/
code/files/mvc_paths.vim
code/files/mvc/app/
code/files/mvc/app.js
code/files/mvc/index.html
code/files/mvc/lib/
code/files/mvc/lib/framework.js
code/files/mvc/lib/theme.css
code/files/mvc/app/controllers/
code/files/mvc/app/models/
code/files/mvc/app/views/
code/files/mvc/app/views/Home.js
code/files/mvc/app/views/Main.js
code/files/mvc/app/views/Settings.js
code/files/mvc/app/models/User.js
code/files/mvc/app/controllers/Mailer.js
code/files/mvc/app/controllers/Main.js
code/files/mvc/app/controllers/Navigation.js
code/files/letters/a.txt
code/files/letters/b.txt
code/files/letters/c.txt
code/files/letters/d.txt
code/files/letters/e.txt
code/ex_mode/duplicate.todo
code/ex_mode/emails.csv
code/ex_mode/foobar.js
code/ex_mode/history-scrollers.vim
code/ex_mode/loop.js
code/ex_mode/practical-vim.html
code/ex_mode/shopping-list.todo
code/customizations/filetype-indentation.vim
code/customizations/ftplugin/
code/customizations/two-space-indent.vim
code/customizations/ftplugin/javascript.vim
code/ctags/anglophone.rb
code/ctags/francophone.rb
code/ctags/speaker.rb
code/ctags/tags
code/ctags/tags-abridged
code/copy_and_paste/collection.js
code/copy_and_paste/fizz.rb
code/auto_complete/bg-colors.css
code/auto_complete/omni-setup.vim
code/auto_complete/sea-shells.txt
code/auto_complete/webapp/
code/auto_complete/webapp/config.ru
code/auto_complete/webapp/public/
code/auto_complete/webapp/public/index.html
code/auto_complete/webapp/public/js/
code/auto_complete/webapp/public/js/application.js



[GARY@localhost Documents]$ ls
code  dnvim-code.tgz  file  file-1  file-2  rhyme
[GARY@localhost Documents]$ tar czf file.tgz  file
[GARY@localhost Documents]$ ls
code  dnvim-code.tgz  file  file-1  file-2  file.tgz  rhyme























郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。