码迷,mamicode.com
首页 > 系统相关 > 详细

Linux基础

时间:2018-03-28 22:02:14      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:com   enable   配置文件   /etc   ima   .bashrc   控制台   option   image   

技术分享图片

 

一:用户登录

root用户:管理员账户,也被称为超级用户,root拥有对Linux系统的所有权限,甚至可以把自己杀死(rm -rf /*),除非必须,一般不用root用户登录系统

普通用户:权限受到限制,只可以对自己有权限的文件进行操作

二:终端(terminal)

终端:

  • 设备终端:鼠标,键盘,显示器
  • 物理终端:控制台(/dev/console)
  • 虚拟终端:/dev/tty[1-6] 在物理机旁边可以使用Alt+F【1-6】进行切换
  • 串行终端:/dev/ttyS
  • 伪终端:/dev/pts/# 通过ssh远程即可打开一个伪终端

ps:可以使用#tty命令来查看当前终端

[root@centos6 ~]#tty
/dev/pts/0

 

交互式接口:

交互式接口:启动终端后,在终端设备附加一个交互式应用程序

  • GUI:Graphic User Interface,及图形化窗口,常见图形桌面有GNOME、KDE和XFCE等,CentOS默认为GNOME桌面
  • CLI:Command Line Interface,及命令行窗口,常用的shell有sh、csh、tcsh、ksh、bash和zsh等,默认shell为bash
[root@centos6 ~]#cat /etc/shells 
/bin/sh
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh

 

可以看到系统支持的shell

shell:

shell也被称为LINUX的命令解释器(command interpreter)。是Linux系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。同时shell也是一种高级程序设计语言,即bash脚本语言

bash:

GNU Bourne-Again Shell(bash)是GNU计划中重要的工具软件之一,目前也是Linux标准的shell,与sh兼容。同时也是CentOS的默认shell。

[root@centos6 ~]#echo $SHELL
/bin/bash

 

命令提示符:

管理员的是#,普通用户为$。使用echo $PS1可以查看当前用户的提示符格式,也可以修改变量或者写入/etc/profile.d/file.sh来自定义用户提示符。

技术分享图片

常用参数:

\u 当前用户

\h 主机名简称

\H 主机名

\w 当前工作目录

\W 当前工作目录基名

\t 24小时时间格式

\T 12小时时间格式

\! 命令历史数

\# 开机后命令历史数

命令分类:

shell中的命令有俩类,内部命令和外部命令,使用help或enable可以列出内部命令列表。

内部命令:由shell自带,而且通过某命令形式提供

enable

  cmd 启用内部命令

  -n cmd 禁用内部命令

  -n 查看所有已禁用的内部命令

 外部命令:在文件系统路径下有对应的可执行文件,可使用:which --skip-ailas cmd 查看命令可执行文件的路径

[root@centos6 ~]#which --skip-alias ls
/bin/ls

 

ps:使用type命令可以判断命令是内部命令还是外部命令,如果显示路径则是外部命令

[root@centos6 ~]#type pwd
pwd is a shell builtin
[root@centos6 ~]#type ls
ls is aliased to `ls --color=auto

 

Hash缓存

系统初始hash表为空,当外部命令执行时,默认会从PATH路径下寻找该命令,找到后会将这条命令的路径记录到hash表中,当再次使用该命令时,shell解释器首先会查看hash表,存在将执行之,如果不存在,将会去PATH路径下寻找。利用hash缓存表可大大提高命令的调用速率。

hash

  -l 显示hash缓存

  -p path cmd 将命令全路径path起别名为cmd

  -t cmd 打印缓存中name的路径

  -d cmd 清除cmd缓存

  -r 清除全部缓存

命令别名(alias)

alias 显示当前shell中已定义的命令别名

  CMD=‘VALUE’ 定义别名

unalias name取消别名

  -a 取消所有别名

如果想永久生效需要写入~/.bashrc(对当前用户生效)或/etc/bashrc(对所有用户生效,全局),不建议修改全局配置文件

ps: 使用source或.可重读配置文件,使其立即生效

   如果别名和原命令名重名,使用双引号、单引号或者\来执行原命令

命令格式

COMMAND [OPTIONS...] [ARGUMENTS...]

选项分为长选项和短选项,如下,执行结果是一样的

[root@centos6 ~]#ls -a
.                clear      .gnome2          install.log.syslog  .pulse-cookie
..               .config    .gnote           .kde                .ssh
.abrt            .cshrc     .gnupg           .local              .tcshrc
anaconda-ks.cfg  .dbus      .gstreamer-0.10  motd                Templates
.bash_history    Desktop    .gtk-bookmarks   Music               Videos
.bash_logout     Documents  .gvfs            .nautilus           .viminfo
.bash_profile    Downloads  .ICEauthority    Pictures            .Xauthority
.bashrc          .esd_auth  .imsettings.log  Public
.cache           .gconf     install.log      .pulse
[root@centos6 ~]#ls --all
.                clear      .gnome2          install.log.syslog  .pulse-cookie
..               .config    .gnote           .kde                .ssh
.abrt            .cshrc     .gnupg           .local              .tcshrc
anaconda-ks.cfg  .dbus      .gstreamer-0.10  motd                Templates
.bash_history    Desktop    .gtk-bookmarks   Music               Videos
.bash_logout     Documents  .gvfs            .nautilus           .viminfo
.bash_profile    Downloads  .ICEauthority    Pictures            .Xauthority
.bashrc          .esd_auth  .imsettings.log  Public
.cache           .gconf     install.log      .pulse

 

参数是命令的作用对象,如文件名、用户名等

[root@centos6 ~]#id root
uid=0(root) gid=0(root) groups=0(root)

 

ps:

  • 多个选项以及多参数和命令之间使用空白字符分隔
  • 取消和结束命令执行:Ctrl+c,Ctrl+d
  • 多个命令可以用;符号分开
  • 一个命令可以用\分成多行

日期和时间

Linux分为俩种时钟,系统时钟和硬件时间,系统时间由CPU振荡器计时,硬件时间为主板BIOS时间

date

  

 

Linux基础

标签:com   enable   配置文件   /etc   ima   .bashrc   控制台   option   image   

原文地址:https://www.cnblogs.com/L-dongf/p/8665892.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!