#理解什么是Linux,什么是GNU/Linux (GNU is not UNIX, recursion)

#能区分程序和进程这两个概念

#知道Shell 其实是一个程序(shell 脚本编程,shell scripting)

#知道Linux 的目录树中最顶级的目录的表示方法 ( / )

#知道绝对路径和相对路径的区别

#知道常见的系统目录的作用

#能够使用cd 命令来在不同的目录中跳转,并能用pwd命令来确定当前的工作目录

#能够用ls 命令来列出某个目录的内容

#能够用cat 命令来显示文本文件的内容

~                                    



内核,程序,进程,shell


内核


程序


Shell


当用户运行了 /usr/bin/gnome-terminal,gnome-terminal 会自动运行bash (bash就是默认的shell)



Linux下的目录组织法,路径表示法,以及常见的系统目录


目录组织法


cd: change directory, 改变当前工作目录

pwd: print working directory, 打印出当前的工作目录

ls: list, 列出目录的内容



路径表示法

绝对路径:相对于根目录,比如 /bin/bash, /home/czl/.bashrc

相对路径:相对于当前工作目录,比如 .bashrc, bin/backup, ../usr/local/bin/msmtp


Linux 几个重要的目录,以及几个特殊目录表示法:

    /

    /bin                <-- binary

    /usr/bin

    /usr/local/bin

    /sbin

    /usr/sbin

    /usr/local/sbin

    /dev                <-- device

    /etc                <-- 存放程序的配置文件

    /home

    /media              <-- 临时挂载点

    /mnt                <-- 临时挂载点

    /proc               <-- 存放进程的相关信息

    /root               <-- root 用户的家目录

    /sys

    /tmp                <-- temporary,存放程序的临时文件

    /var


    ..   代表上一层目录(父目录)

    .    代表当前目录

    ~    代表当前用户的家目录

    ~abc 代表用户abc 的家目录


英文描述 root directory 指的是斜杠/ (根目录),而不是指root 用户的家目录

程序所存放的目录名字中,通常有bin 这三个字符,bin 就是binary 的意思



思考

以下命令列出的是哪个目录的内容?这种路径表示法是绝对路径还是相对路径?

ls /usr/local/bin/../../share/man/



操作目录和文件的几个命令

cd: change directory, 进到某个目录中

    cd -        <-- 进入上一次的工作目录

    cd ~        <-- 回到家目录

    cd ..       <-- 回到上一层目录(父目录)


pwd: print working directory, 打印出当前的工作目录

ls: list, 列出目录的内容

cat: concatenate, 连接若干文件,并显示到屏幕上