Linux 基础入门
=====================================================================
概述:
=====================================================================
1.远程连接
★ssh协议:secure shell
~]# ss -tnl 查看系统是否监听在tcp协议的22号接口;
~]# ip addr list 或者 ifconfig 查看ip地址
确保防火墙处于关闭状态:~] # iptables -L -n
关闭防火墙:
CentOS 7
~]# systemctl disable firewalld.service
~]# systemctl stop firewalld.service
CentOS 6
~]# service iptables stop
~]# chkconfig iptables off
2.用户登录
★root用户
一个有特殊的管理账户,也称为超级用户,root已经接近完整的系统控制,对系统损害几乎有无限的能力,除非必要,不然不要登录root
★普通(非特权)用户
权限有限,对系统造成损害的能力比较有限;
建议使用非管理员账号登录,执行管理操作临时切换至管理员,操作完成即退回;
注意:
Linux系统中默认的管理员用户为root,但这只是一个名字而已,是可以切换的。系统判断是管理员还是普通用户,是看用户的UID(User ID 用户ID编号),管理员的UID是0,普通用户的不是;
显示命令:~]# id -u (显示自己的id) ~]# id -u tao (显示tao的id)
在CentOS 6 中默认是从500开始编号的,CentOS 7中默认是从1000开始编号的
3.命令提示符
★[root@localhost ~]#
我们称之为PS1,靠环境变量定义,其组成部分可以使用echo命令来显示:echo $PS1
格式:[\u@\h \ W]\$
# 表示命令提示符,提示符有两种:
① # :表示管理员账号,为root;拥有最高权限,能执行所有操作;
② $ :表示普通用户,非root用户,不具有管理权限,不能执行系统管理类操作
因此可以通过命令提示符来判断管理员登录还是普通用户登录!
★输入命令,然后回车,提请shell程序找到键入的命令所对应的可执行程序的代码,并由其分析后提交给内核分配资源将其运行起来,表现为一个或多个进程。
附图:
分层结构图
演示:
[root@centos7 ~]# cat .bashrc # .bashrc # User specific aliases and functions alias rm=‘rm -i‘ alias cp=‘cp -i‘ alias mv=‘mv -i‘ # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi PS1="\[\e[36;40m\][\[\e[32;40m\]\u\[\e[0m\]@\[\e[33;40m\]\h \[\e[36;40m\]\W\[\e[36;40m\]]\[\e[0m\]\\$ " [root@centos7 ~]# echo $PS1 \[\e[36;40m\][\[\e[32;40m\]\u\[\e[0m\]@\[\e[33;40m\]\h \[\e[36;40m\]\W\[\e[36;40m\]]\[\e[0m\]\$
4.在shell中的可执行命令:
★内建命令(bulitin)
由shell自带的,而且通过某命令形式提供;
~]# enable COMMAND 启用内建命令
~]# enable -n COMMAND 禁用内建命令
★外部命令
在当前系统的某文件路径下有对应的可执行程序文件;
可通过which、whereis 命令来查找到期可执行的程序文件
外部命令的路径:# echo $PATH (PATH是一个变量,定义了若干个目录,放了程序的文件夹)
※如何查看一个命令是内建命令还是外部命令?
通过type命令,格式:type COMMAND (注意linux严格区分大小写)如:~]# type cd
★hash命令
记录或显示程序的位置(可执行程序的位置)
搜寻到的外部命令路径结果缓存至kv(key-value)存储中。
~]# hash -d :表示清空指定命令的缓存,如:hash -d ls
~]# hash –r :表示清空所有命令的缓存, hash -r
★alias 定义别名
# alias 定义别名 ;# unalias 取消别名(是临时生效的)
别名的优先顺序是大于原始命令。
想要执行原始命令方法:直接输入路径、使用 \ (反斜线) 或 ` `(单引号)
★命令执行的顺序:别名>内建>hash>$PATH
演示:
1.内建命令
[root@CentOS6 ~]# type cd cd is a shell builtin # 内建命令 [root@CentOS6 ~]# enable -n cd [root@CentOS6 ~]# cd /etc -bash: cd: command not found [root@CentOS6 ~]# enable cd [root@CentOS6 ~]# cd / [root@CentOS6 /]# ls bin boot dev etc home lib lib64 lost+found media misc mnt net nfs opt
2.外部命令
[root@CentOS6 ~]# type date date is /bin/date # 外部命令显示的是路径 # 查看外部命令对应的路径 [root@CentOS6 ~]# which date /bin/date [root@CentOS6 ~]# whereis date date: /bin/date /usr/share/man/man1/date.1.gz /usr/share/man/man1p/date.1p.gz # 所有的外部命令都在PATH变量中,执行顺序从左到右 [root@CentOS6 ~]# echo $PATH /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
3.hash命令
# 缓存的外部命令 [root@centos7 ~]# hash 命中 命令 2 /usr/sbin/iptables 1 /usr/sbin/ifconfig 1 /usr/bin/cat 1 /usr/bin/locale 1 /usr/bin/yum 3 /usr/bin/ping 3 /usr/bin/ls 1 /usr/sbin/ip # 清空指定的缓存命令 [root@centos7 ~]# hash -d iptables [root@centos7 ~]# hash 命中 命令 1 /usr/sbin/ifconfig 1 /usr/bin/cat 1 /usr/bin/locale 1 /usr/bin/yum 3 /usr/bin/ping 3 /usr/bin/ls 1 /usr/sbin/ip # 清空命令缓存 [root@centos7 ~]# hash -r [root@centos7 ~]# hash hash: 哈希表为空
4.alish 命令别名
[root@CentOS6 ~]# alias alias cp=‘cp -i‘ alias l.=‘ls -d .* --color=auto‘ alias ll=‘ls -l --color=auto‘ alias ls=‘ls --color=auto‘ alias mv=‘mv -i‘ alias rm=‘rm -i‘ alias which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde‘
5.运行命令:
★命令格式:
COMMAND [OPTIONS] [ARGUMENTS]
命令 选项 参数
☉选项:用于启用或关闭命令的某个或某些功能;如:ls的-l -h选项
短选项:-c, 例如:ls的 -l, -h
长选项:--word,例如:--all, --human-readable
☉参数:
命令的作用对象(就是向命令提供数据的),比如文件名,用户名等;
命令的参数可以有多个;
注意:
多选项,以及多参数和命令之间使用空白字符分隔
取消和结束命令执行:Ctrl+c
多个命令可以用 ;符号分开;
一个命令可以用 \ 分成多行;
本文出自 “逐梦小涛” 博客,请务必保留此出处http://1992tao.blog.51cto.com/11606804/1895451
原文:http://1992tao.blog.51cto.com/11606804/1895451