进无止境

学点Linux

关于Shell in Debian “jessie” X64

  • cd命令:进入某一个目录
cd [dir]
  • pwd命令:显示当前的工作目录
pwd
  • mv命令:文件改名、移动文件
mv [options] source dest
mv [options] source directory
  • rm命令:删除文件及目录
rm [options] name

options:
-i:删除前逐一询问确认。
-f:强制性删除,即使原文件属性设为只读,也直接删除,无需逐一确认。
-r:将目录及子目录下的所有文件删除,删除目录必须使用此参数。

  • mkdir命令:创建文件目录
mkdir [options] [dir]

options:
-m:设定权限。
-p:需要时创建上层目录。

  • cp命令:将一个文件复制至另一个文件、将目录下数个文件复制到另一个目录
cp [options] source dest
cp [options] source directory

options:
-a:尽可能将文件状态、权限等属性照原样复制。
-r:若source中含有目录名,则将目录下的文件及目录都依次序复制至目的地。
-f:若目的地已经有相同文件名的文件存在,则强制覆盖。
-u:更新选项,只有当源文件比目的文件新时才复制。

  • ls命令:列出目录下的内容
ls [options] [dir]

options:
-a:显示所有文件及目录,含隐含文件(以“.”开头的文件或目录,默认不显示)。
-l:以详细格式显示文件,即显示除文件名外,还显示权限、拥有者、文件大小时间日期等信息。
-r:将文件以相反次序显示(原定依英文字母A->Z或a->z次序)。
-t:将文件依建立时间先后次序列出。
-A:同-a,但不列出“.”(当前目录)及“..”(父目录)。
-F:在列出文件名称后加一个符号表示文件的发行,例如可执行文件则加“*”,目录则加“/”。
-R:若子目录下有文件,则将所有子目录下的文件也列出来。

  • chmod命令:改变文件权限
chmod [options] mode file

options:
-c:该文件权限确实已经更改,才显示其更改动作。
-f:若该文件权限无法被更改,则不要显示其错误讯息。
-v:显示权限变更的详细资料。
-R:对所指定目录下面的文件以递归的方式对其权限逐个变更。
mode:
权限设定字符串:[ugoa][[+|-|=][rwxX]]。其中,其中,u表示该文件的拥有者,g表示与该文件拥有者所属的组,o表示其他人,a表示这3者都设置。+表示增加权限、-表示取消权限、=表示唯一设定权限。r表示可读取,w表示可写入,x表示可执行。

  • chown命令:改变文件属主(需要系统root权限)
chown [options] user [:group] file

options:
-c:该文件拥有者确实已经更改,才显示其更改动作。
-f:若该文件权限无法被更改,则不要显示其错误讯息。
-h:只对于连接(link)进行变更,而非该link真正指向的文件。
-v:显示拥有者变更的详细资料。
-R:对所指定目录下面的文件以递归的方式对其权限逐个变更。
user:设置文件的新所有者。
group:设置文件新的组。

  • apt-get 命令:APT软件包管理工具
apt-get [options] command
apt-get [options] install|remove pkg_name1 pkg_name2 pkg_name3...
apt-get [options] source pkg_name1 pkg_name2 pkg_name3...

options:
-q:没有进度指示的逻辑输出。
-qq:除了出现错误,否则没有输出。
-d:不打开或安装,只下载程序包。
-s:没有行为,执行原定的模拟。
-y:没有输出,同意执行所有的队列命令。
-f:尝试去修复一个具有附属依赖性的安装软件包系统。
-m:在无法定位安装软件包的情况下尝试继续命令。
-u:显示升级包的列表。
-b:在获取源代码包后构建源包。
-V:显示软件包详细的版本号。

command:
update:系统软件包信息库更新。
upgrade:更新所有软件包并且自动升级成最新。
dist-upgrade:更新整个Debian系统。
install:安装指定软件包。
remove:卸载指定软件包。
autoremove:自动卸载所有不用的软件包。
purge:卸载指定软件包同时删除其对应的配置文件。
source:下载指定软件包的源码包文件。
build-dep:为源码包配置所需的构建依赖关系。
check:检查系统中已安装软件包的依赖性。
clean:删除下载了的软件包,其目录在/var/cache/apt/archives/下面。
autoclean: 删除已下载的旧版本的软件包。类似于clean,但是会更有选择地删除旧版本的软件包。

  • whereis命令:查找某个文件或程序
whereis [options] file

options:
-b:定位可执行文件。
-m:定位帮助文件。
-s:定位源代码文件。
-u:搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
-B:指定搜索可执行文件的路径。
-M:指定搜索帮助文件的路径。
-S:指定搜索源代码文件的路径。

  • unzip命令:解压.zip压缩文件
unzip [options] file.zip

options:
-v:查看文件目录列表,但不解压。
-d:将文件解压到指定目录中。
-n:不覆盖原来已经存在的文件。
-o:覆盖已存在的文件并且不需要用户确认。

  • gzip命令:压缩成以.gz结尾的文件
gzip [options] file

options:
-n(n=1-9):指定压缩级别
-d:解压

例如,解压以.gz结尾的压缩文件:

gzip -d file.gz
  • bzip2命令:压缩成以.bz2结尾的文件
bzip2 [options] file

options:
-n(n=1-9):指定压缩级别
-d:解压

  • tar命令:压缩一个文件或者文件目录下的内容
tar [options] file

options:
-c:创建新的打包文件。
-x:将.tar文件解包。
-z:打包后直接用gzip命令进行压缩,或者解压文件。
-j:打包后直接用bzip2命令进行压缩,或者解压文件。
-t:查看一个打包文件里的文件目录。
-f:使用文件或者设备(这个选项基本上是必选的)。
-k:如果在还原时有相同的文件存在则不进行覆盖。
-v:在打包压缩或者解包解压后将文件的详细清单是否显示出来。
-N:在此选项后加日期,如果文件日期比-N选项后面加的日期还要新才会被加进压缩包中。

  • Debian切换默认桌面环境
update-alternatives --config x-session-manager
  • 查看系统版本发行商信息
lsb_release -a
wget -qO- bench.sh | bash
wget -qO- --no-check-certificate https://raw.githubusercontent.com/oooldking/script/master/superbench.sh | bash
  • 导入公共密钥(public key)
apt-key adv --keyserver KeyServer --recv-keys public key signature
gpg --keyserver KeyServer --recv public key signature
  • 通过进程名查看其占用本地端口
netstat -nap | grep processname
  • 更改本地或者远程ssh登陆欢迎语信息
nano /etc/motd
  • 树莓派apt源的配置文件位置
/etc/apt/sources.list
/etc/apt/sources.list.d/raspi.list