計算機基礎及Linux基礎

計算機基礎與Linux入門

  • 計算機組成及功能

  • Linux常見發行版

  • Linux重要哲學思想

  • Linux文件系統層級結構及文件命名規則

  • 如何獲取Linux命令的使用幫助

  • Linux常用命令及示例

1.1 計算機組成及功能

1.1.1 計算機的五大部件

計算機的主要組成部分有:

  • 1、CPU:運算器

  • 2、控制器、寄存器(內部存儲)、緩存;

  • 3、存儲器:內存,RAM;

  • 4、INPUT:下達指令,提供數據等;

  • 5、OUTPUT:輸出數據加工后的結果;

其中:1和2都屬于CPU的內部組件

1.2 Linux常見發型版本

  • 1、CentOS:從RedHat發展而來的發行版,由志愿者維護與RedHat完全兼容,目前已經被RedHat收購。

  • 2、Debian:一個強烈信奉自由軟件,并由志愿者維護的系統。

  • 3、Fedora:是RedHat的社區版,會經常引入新特性測試。

  • 4、RedHat:有Redhat公司發行并維護。

  • 5、Ubuntu:一個非常流行的桌面發行版。

  • 6、SUSE:SUSE Linux原是以Slackware Linux為基礎,并提供完整德文使用界面的產品。

1.3 Linux重要哲學思想

  • 1、一切皆文件(硬件設備也是通過文件表示)

    物理終端:  /dev/console

    虛擬終端: /dev/tty[1-6]

    串行終端: /dev/ttyS#

    偽終端: /dev/pts/#

  • 2、由眾多目的單一的小程序組成,一個程序只做一件事,并且做好;

  • 3、組合小程序完成復雜任務;

  • 4、盡可能避免跟用戶交互;

  • 5、使用文本文件保存配置信息;

  • 6、提供機制,而非策略。

1.4 Linux文件系統層級結構及文件命名規則

文件是什么?眾多文件如何有效組織起來?

  • 目錄:目錄是路徑的映射

  • 文件:存儲空間的一段流式數據,對數據可以做到按名存??;

  • Linux的文件系統:層級結構;有索引;

    Linux的文件系統成倒置的樹狀結構,如下:

/
|-- bin -> usr/bin
|-- boot
|-- data
|-- dev
|-- etc
|-- home
|-- lib -> usr/lib
|-- lib64 -> usr/lib64
|-- media
|-- mnt
|-- opt
|-- proc
|-- root
|-- run
|-- sbin -> usr/sbin
|-- srv
|-- sys
|-- tmp
|-- usr
`-- var

1.4.1 文件的路徑表示

  • 絕對路徑: 從根開始表示出的路徑;

 [root@bj-1-140-node1 ~]# cd /etc/
  • 相對路徑: 從當前位置開始表示出的路徑;

 [root@bj-1-140-node1 etc]# cd sysconfig/

1.4.2 文件名使用法則

  • 1、嚴格區分字符大小寫;

  • 2、目錄也是文件,在同一個目錄下,兩個文件不能同名;

  • 3、支持使用除/以外的任意字符;

  • 4、最長不能超過255個字符;

1.4.3 用戶家目錄

用戶的起始目錄: 普通用戶管理文件的位置;

普通用戶Jerry的家目錄就是/home/Jerry

1.5 如何獲取Linux命令的使用幫助

Linux系統的命令分為外部命令與內部命令兩大類

1.5.1 內部命令的使用幫助

內部命令使用help查看命令的使用方法;查看命令是內部還是外部命令通過type查看;

 [root@bj-1-140-node1 ~]# help cd

1.5.2 外部命令的使用幫助

外部命令的使用幫助可以有兩種方式。

  • 1、命令自帶簡要格式的使用幫助

 [root@bj-1-140-node1 ~]# tree --help
  • 2、使用man手冊獲取命令幫助

命令格式:

 man [1-8] COMMAND

常用選項:

  -M /PATH/TO/SOMEDIR  到指定目錄下查找手冊并打開

man命令可以指定查看某個具體章節

SECTION:
    NAME: 功能性說明
    SYNOPSIS:語法格式
    DESCRIPTION: 描述
    OPTIONS:選項
    EXAMPLES: 使用示例
    AUTHOR: 作者
    BUGS:報告程序bug的方式
    SEE ALSE: 參考
    
SYNOPSIS:
    []:可選內容
    <>:必須提供的內容
    a|b|c:多選一
    ...:同類內容可出現多個

使用手冊:壓縮格式的文件,有章節之分

/usr/share/man 
    man1, man2, man3, ...
    man1:用戶命令;
    man2:系統調用
    man3:C庫調用
    man4:設備文件及特殊文件
    man5:文件格式(配置文件格式)
    man6:游戲使用幫助
    man7:雜項
    man8:管理工具及守護進程;

man命令打開手冊以后的操作方法

翻屏:空格鍵,向文件尾部翻一屏;
b:向文件首部翻一屏;
Ctrl+d:向文件尾部翻半屏;
Ctrl+u:向文件首部翻半屏;
回車鍵:一次向文件尾部翻一行;
k:向文件首部翻一行;
G:跳轉最后一行
#G:跳轉至指定行,#號代表數字
文本搜索功能:
/關鍵詞搜索指定字符串不區分大小寫,從文件首部向尾部依次查找
或
    ?關鍵詞從文件尾部向首部部依次查找
    n:與查找命令方向相同
    N:與查找命令方向相反
退出:
    q

1.5.3 應用程序自帶的幫助文檔

  • REDEME: 應用程序的相關信息

  • INSTALL: 安裝幫助

  • CHANGES: 版本迭代時的改動信息

1.5.4 通過程序的官方文檔獲取幫助

通過查看獲取官方站點上的"Document"

1.5.5 用好搜索引擎

Google搜索關鍵詞:

如搜索某一類型文檔可以在后面加上filetype:pdf 例如:centos7 filetype:pdf

也可以在指定站點搜索指定內容,例如:centos7  site:51cto.com

1.6 Linux常用命令使用

1.6.1 help

獲取內部命令幫助

 [root@bj-1-140-node1 ~]# help cd

1.6.2 pwd

獲取當前工作目錄

 [root@bj-1-140-node1 ~]# pwd/root

1.6.3 file

查看文件類型

[root@bj-1-140-node1 ~]# file /etc/issue
/etc/issue: ASCII text
[root@bj-1-140-node1 ~]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), 
for GNU/Linux 2.6.32, BuildID[sha1]=aa7ff68f13de25936a098016243ce57c3c982e06, stripped

1.6.4 basename

指定一個文件路徑獲取文件的基名

 [root@bj-1-140-node1 ~]# basename /etc/sysconfig/selinux 
 selinux

1.6.5 dirname

獲取文件所在的目錄名

 [root@bj-1-140-node1 ~]# dirname /etc/sysconfig/selinux 
 /etc/sysconfig

1.6.6 type

查看命令的類型是內部命令還是外部命令

 [root@bj-1-140-node1 ~]# type cd
 cd is a shell builtin
 [root@bj-1-140-node1 ~]# type tree
 tree is hashed (/usr/bin/tree)

1.6.7 cd

切換目錄

命令格式

 cd  /PATH/TO/SOMEDIR

cd 不加任何參數時切換回家目錄;bash中~表示家目錄;

 cd ~  :切換回自己的家目錄cd ~USERNAME :切換到指定用戶家目錄cd - :切換至上一次所在目錄

cd相關的環境變量

 $PWD 當前工作目錄$OLDPWD 上一次的工作目錄

1.6.8 ls

list 列出指定目錄下的內容

命令使用格式:
  ls [OPTION]... [FILE]...
    -a:顯示所有文件,包括隱藏文件;
    -A:顯示除.和..之外的所有文件;
    -l:顯示文件的詳細屬性信息;
    -rw-------. 1 root root 1182 Dec  2 04:27 anaconda-ks.cfg
    -:文件類型
    rw-------:文件的權限分為三組
    rw-:文件屬主的權限;
    ---:文件的屬組的權限;
    ---:其它用戶的權限(非屬主、屬組);
    1:數字表示文件被硬鏈接的次數;
    root:文件的屬主;
    root:文件的屬組;
    1182:文件的大小,單位是字節;
    Dec  2 04:27:文件最近一次被修改的時間
    anaconda-ks.cfg:文件名
    -h:將文件大小換算成人類可讀的形式
    -d:查看目錄自身的詳細信息,并非目錄中內容;
    -r:以逆序的方式顯示文件;
    -R:遞歸顯示;

示例

[root@bj-1-140-node1 ~]# ls
anaconda-ks.cfg
[root@bj-1-140-node1 ~]# ls -l
total 4
-rw-------. 1 root root 1182 Dec  2 04:27 anaconda-ks.cfg
[root@bj-1-140-node1 ~]# ls -lr /etc/sysconfig/
total 92
-rw-r--r--. 1 root root  644 Jun 16  2015 wpa_supplicant
-rw-r--r--. 1 root root  138 Aug 13  2015 svnserve
-rw-r-----. 1 root root  506 Nov 20  2015 sshd
lrwxrwxrwx. 1 root root   17 Dec  2 04:22 selinux -> ../selinux/config
-rw-r--r--. 1 root root    0 Jun 10  2014 run-parts
-rw-r--r--. 1 root root  196 Sep  8  2015 rsyslog
-rw-r--r--. 1 root root   12 Nov 21  2015 rsyncd
-rw-r--r--. 1 root root  755 Nov 20  2015 readonly-root
-rw-r--r--. 1 root root   15 Nov 21  2015 rdisc
-rw-r--r--  1 root root  159 May 31  2016 ntpdate
drwxr-xr-x. 2 root root 4096 Dec  4  2016 network-scripts
-rw-r--r--. 1 root root   22 Dec  2 04:27 network
-rw-r--r--. 1 root root  634 Nov 20  2015 netconsole
drwxr-xr-x. 2 root root    6 Nov 20  2015 modules
-rw-r--r--. 1 root root  200 Mar 18  2014 man-db
-rw-r--r--. 1 root root  180 Dec  2 04:26 kernel
-rw-r--r--. 1 root root 1460 Nov 21  2015 kdump
-rw-r--r--. 1 root root  903 Jul 14  2015 irqbalance
-rw-------. 1 root root 1974 Nov 20  2015 iptables-config
-rw-------. 1 root root 1988 Nov 20  2015 ip6tables-config
-rw-r--r--. 1 root root  798 Nov 20  2015 init
lrwxrwxrwx. 1 root root   17 Dec  2 04:23 grub -> /etc/default/grub
-rw-r--r--. 1 root root   72 Nov 20  2015 firewalld
-rw-------. 1 root root 1390 Jun 10  2014 ebtables-config
-rw-------. 1 root root  110 Jul 27  2015 crond
-rw-r--r--. 1 root root  150 Nov 20  2015 cpupower
drwxr-xr-x. 2 root root    6 Nov 20  2015 console
drwxr-xr-x. 2 root root   41 Dec  2 04:22 cbq
-rw-r--r--. 1 root root  429 Dec  2 04:27 authconfig

1.6.9 cat

文本文件查看工具,查看文件中的內容

 命令格式:
 cat [OPTION]... [FILE]...  
     -n:顯示行號;  
     -E:顯示文件尾部行結束符$;

示例

[root@bj-1-140-node1 ~]# cat -n /etc/fstab 
     1
     2#
     3# /etc/fstab
     4# Created by anaconda on Fri Dec  2 04:20:15 2016
     5#
     6# Accessible filesystems, by reference, are maintained under '/dev/disk'
     7# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
     8#
     9UUID=d7c087de-36be-468d-aa08-b0d203c80db0 /                       xfs     defaults        0 0
    10UUID=3f4c9e32-d1bc-472b-ae1b-04eab1745d7e /boot                   xfs     defaults        0 0
    11UUID=a6ff9119-a960-4896-8060-15c0f68c993a swap                    swap    defaults        0 0
[root@bj-1-140-node1 ~]# cat -E /etc/fstab 
$
#$
# /etc/fstab$
# Created by anaconda on Fri Dec  2 04:20:15 2016$
#$
# Accessible filesystems, by reference, are maintained under '/dev/disk'$
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info$
#$
UUID=d7c087de-36be-468d-aa08-b0d203c80db0 /                       xfs     defaults        0 0$
UUID=3f4c9e32-d1bc-472b-ae1b-04eab1745d7e /boot                   xfs     defaults        0 0$
UUID=a6ff9119-a960-4896-8060-15c0f68c993a swap                    swap    defaults        0 0$

1.6.10 echo

回顯命令

 echo [SHORT-OPTION]... [STRING]...    
     -n:不進行換行;    
     -e:讓轉義符生效;    
     \n:換行符    
     \t:制表符(Tab鍵) 
 顏色控制:   
     [root@bj-1-140-node1 ~]# echo -e "\033[32;1mHello,World\033[0m"STRING
 可以使用引號,單引號和雙引號都可以; 
     單引號:強引用,變量引用不執行 
     雙引號:弱引用,比那里應用會執行

示例

 [root@bj-1-140-node1 ~]# echo -e "Hello\nWorld"HelloWorld
 [root@bj-1-140-node1 ~]# echo -e "\033[32;1mHello,World\033[0m"Hello,World

1.6.11 shutdown

關機或重啟命令

 命令格式:
 shutdown [OPTIONS...] [TIME] [WALL...]  
     -h:halt 關機  
     -r:reboot 重啟  
     -c:cancel 取消  
 TIME:  
     now 立即執行  
     hh:mm # 指定一個具體的時間  
     +m :在幾分鐘以后關機  
 WALL:可以指定關機或者重啟時要發送的信息

示例

1.6.12 日期相關的命令

  • date 顯示系統時鐘

 顯示日期時間:
     date [OPTION]... [+FORMAT]  
     FORMAT:格式符  
     %F:顯示年-月-日  
     %T:顯示小時:分鐘:秒鐘  
     %Y:年  
     %m:月  
     %d:日  
     %M:分鐘 
     %H:小時  
     %S:秒  
     %s:從1970-01-01到命令執行的那一刻所經歷的秒鐘(unix元年)
     設定日期時間:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]  date 月日時分年.秒  date 120415492016.08
 [root@bj-1-140-node1 ~]# date
 Sun Dec  4 18:34:38 CST 2016
 [root@bj-1-140-node1 ~]# date +%F2016-12-04
 [root@bj-1-140-node1 ~]# date +%T18:34:45
 [root@bj-1-140-node1 ~]# date +"%F %T"2016-12-04 18:35:09
 # 設置系統時間
 [root@bj-1-140-node1 ~]# date 120418382016Sun Dec  4 18:38:00 CST 2016
  • hwclock 顯示硬件時鐘

 -c:把系統時鐘設置為跟硬件時鐘一樣;-w:把硬件時鐘設置為跟系統時間一樣;
 [root@bj-1-140-node1 ~]# hwclock 
 Sun 04 Dec 2016 06:34:01 PM CST  -0.682422 seconds
  • cal 查看日歷

[root@bj-1-140-node1 ~]# cal
    December 2016   
Su Mo Tu We Th Fr Sa
             1  2  3
 4  5  6  7  8  9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

原創文章,作者:oranix,如若轉載,請注明出處:http://www.www58058.com/62536

(0)
oranixoranix
上一篇 2016-12-04
下一篇 2016-12-04

相關推薦

  • Linux系統自動化安裝基礎

    Linux系統自動化安裝基礎 安裝程序CentOS系統安裝系統啟動流程:bootloader–>kernel(initramfs)–>rootfs–>/sbin/init注意:安裝過程中與啟動過程中的文件不同 anaconda系統安裝程序tui: 基于圖形庫curses的文本窗口gui:圖形窗口 安裝程序…

    Linux干貨 2016-10-08
  • 內核編譯安裝 (用NTFS模塊)

    內核編譯安裝 (用NTFS模塊) 1 rz 下載的 的內核最新文件 在這 https://www.kernel.org/ 2 tar xvf linux-4.12.10.tar.xz 解壓文件 內核文件一般都放在 /usr/src/ 3 cd linux-4.12.10/ 4 [root@god linux-4.12.10]#cp /boot/config-…

    2017-09-04
  • N22-妙手 第4天視頻課程練習

    一、Globbing文件名通配練習 練習1:顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間出現任意一位字符的目錄 [root@localhost ~]# ls -d /var/l?[[:lower:]] /var/lib  /var/log 練習2:顯示/etc目錄下,以任意一位數字開頭…

    Linux干貨 2016-08-22
  • 初識 vi/vim文本編輯器

    我們操作文件,終究離不開編輯文件,對文件內容的編輯,Linux系統下,我們通常使用VI/VIM來編輯文件。VI是每個Linux都會自帶的文本編輯器,VIM是VI的增強版,現在的最新版都已自帶,但是可能有些發行版本沒有自帶,可以使用sudo apt-get install vim命令安裝vim。 可以使用vi或者vim命令直接進入新的文本文件,或者vim 文件…

    Linux干貨 2017-07-29
  • shell腳本編寫規范

    1 腳本名以.sh結尾,名稱盡量見名之意,比如ClearLog.sh Clear_Log.sh clearlog.sh SerRestart.sh Ser_Restart.sh;2 盡量使用UTF-8編碼,注釋及輸出盡量使用英文;3 一般給到執行權限,但一些關于變量的配置文件不用加執行權限;4 執行的時候可以使用bash 執行,或者使用bash -x執行,可…

    Linux干貨 2017-04-16
  • Linux基礎學習總結(二)

    一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 常用基礎命令:cd、pwd、mkdir、touch 查看:cat,more,less,tail,head,tac 復制:cp 移動:mv 刪除:rm 創建:touch 元數據屬性:stat 查看內容類型:file 二、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及…

    Linux干貨 2016-09-24
欧美性久久久久