netstat 显示网络统计信息的命令
此命令用来显示整个
netstat -anp
p显示名称的名字
kill -9 进程号
traceroute 显示数据包历程
查询 系统有哪些shell
cat /etc/shells
网卡 ip dns地址设置
http://xpku.blog.163.com/blog/static/239650020096213304219/
samba安装以及使用 samba是linux和windows进行资源共享
http://www.cnblogs.com/phinecos/archive/2009/06/06/1497717.html
/etc/init.d/samba start
/etc/init.d/这个是目录,下面存放着很多的服务程序(当然都是可执行的)。
read 读取命令
read atest 从键盘读入数据进 atest
echo $atest
read -p "please enter your name :" -t 30 named
echo $named
-p 后面接字符
-t 等待时间
declare 声明变量
history
!number 执行 history中第number条命令
!command 执行最近的命令向前搜索 以command打头的搜寻
!! 执行最近的命令
路径与命令查找的顺序
alias->builtin->$PATH 查找命令的顺序
cat /etc/issue 在其中更改信息用于系统登陆时的欢迎信息
cat /etc/motd 这是提供给telnet用户显示信息用的
cat /root/profile 登录login之前读取其中的信息
mysqldump -u root -p密码 数据库名>data.bak 备份
mysql -u root -p密码 数据库名 <data.bak 恢复
ssh 安装
ubuntu 端 采用 apt-get install ssh 安装ssh服务
netstat -anp|more
-p 查看进程号
kill -9 进程号
/etc/init.d/ssh start 启动ssh服务
netstat -apn| grep 22 查看22号端口是否开启
如果是虚拟机内的话,必须网卡桥接,然后ip地址为虚拟机内的 ifconfig显示的ip地址才可以连接上
任务调度的使用 crontab
crontab -r 终止任务调度
crontab -l 列出当前有哪些任务调度
1.设置任务
crontab -e
2.每隔一定时间去执行
希望每天凌晨2点执行 date>>/home/friends/mydate2
分 小时 日期 月历 星期(0-6)
5 * * * * ls -l /etc/ >> filename
3.调度多个任务
1)在crontab -e中隔行写
2)可以把所有的任务,写入到一个可执行文件(Shell编程)
写一个shell脚本,然后在1)中 执行此shell脚本
查看进程
ps -aux 查看进程信息 静态地查看某个时刻进程
top 动态地
然后输入 u回车,再输入用户名 查看某个用户的启动的进程
然后输入k,再输入要结束的进程ID号 回车 杀死某个进程的ID
top -d 10 10秒更新进程
终止进程
kill pid 杀死进程 因为有些进程会捕捉某些信号,如果不能结束此进程可用下面
kill -9 pid 强制删除进程
cd 什么都不加 默认到自己用户的主目录
rm -rf b 能够删除目录和它里面的文件
-r 递归 recursive
-f force 强制,会全覆盖, 否则会挨个询问是否覆盖
touch 文件名 建立 空文件
cp -r 源文件夹 目的文件夹 拷贝文件夹操作
cp 源文件 目的文件 拷贝文件
用户登录后自动执行Shell脚本文件 (重要)
每个用户都有自己的一套环境变量配置、启动前运行 相应脚本的配置文件。
.bashrc 位于主目录比如friends下
它之前执行系统的脚本/etc/bashrc主要是基本配置数据 /etc/bashrc是系统的
.bash_profile 位于主目录比如friends用户下 的环境变量,配置的是用户的环境变量
它之前执行系统的脚本/etc/profile 主要是配置环境变量 /etc/profile是系统的shell脚本,配置系统的环境变量
shell 学习
cat /etc/passwd 最后一项数据表明 为这个用户提供的是哪个shell
alias lm='ls -al' 命令别名替换
type命令查看命令是否属于bash的命令
命令太长 加上 \ 按enter 会让enter暂先不具有实行的效果 实现多行输入命令的功能
用户自己定义的变量最好加上MY打头 个人习惯
MYNAME=WF 变量的设置
echo $MYNAME 显示变量内容
如果有空格 必须以 双引号 或者单引号 标注
双引号的内容 可以保持数据原本的特性
单引号的内容 则视为普通字符
unset MYNAME 取消变量的设置
EXPORT MYNAME 让其他子进程执行,让它变成环境变量。
`` 标注的会先执行命令,然后把结果给外围命令执行
ls -l ` locate aa` 把文件名aa相关的先找出来 然后 显示他们的信息
env 查看环境变量
set 查看环境变量与自定义变量
export 让自定义变量可以编程环境变量
##介绍重要的环境变量
HISTSIZE 历史命令的条数
RANDOM 产生0~32767 之间的数
PS1 对提示符的设置,可以让提示符显示更多的内容 P306
以下为 PS1中配置显示的意义
o \d :代表日期,格式为 Weekday Month Date,例如 "Mon Aug 1"
o \H :完整的主机名称。举例来说,鸟哥的练习机 linux.dmtsai.tw ,那么这个主机名
o \h :仅取主机名称的第一个名字。以上述来讲,就是 linux 而已, .dmtsai.tw 被省略。
o \t :显示时间,为 24 小时格式,如: HH:MM:SS
o \T :显示时间,12 小时的时间格式!
o \A :显示时间,24 小时格式, HH:MM
o \u :目前使用者的账号名称;
o \v :BASH 的版本信息;
o \w :完整的工作目录名称。家目录会以 ~ 取代;
o \W :利用 basename 取得工作目录名称,所以仅会列出最后一个目录名。
o \# :下达的第几个指令。
o \$ :提示字符,如果是 root 时,提示字符为 # ,否则就是 $ 。
PS2 当你使用转移符号\ 的时候 第二行的内容 一般是'> '
$ 本shell的pid 可以$$查看本shell的pid
? 回传码 如果上个命令执行成功回传码是0 否则为非0 通过$?查看
declare 和typeset是一样的功能, 声明变量的类型
declare bash主动将所有的变量名称与内容全部调出来,
-a 将variable的变量定义成数组类型
-i 整数数字
-x 用法与export一样
-r 设置成readonly类型,该变量不可被更改内容也不可重设
例如
sum=100+200
echo $sum 结果是100+200
declare -i sum=100+200
echo sum 结果是300
declare +x sum -变成+ 可以进行取消的操作 ,将sum变成非环境变量
ulimit -a 查看参数
可以设置系统最大 资源承受范围 查查命令
login shell 与 non-login shell
当对 ~/.bashrc 文件 加入了环境变量之后,想在当前立马生效需要以下
source 配置文件名
. 配置文件名 两个命令等同,将主文件的设置读入目前的bash环境
source .bashrc
. .bashrc
~/.bash_history 存放历史命令记录内容 HISTSIZE这个环境变量觉得最多记几条
~/.bash_logout 记载退出时 shell帮我们做什么事,可以自己往里面添加东西,当退出希望shell帮我们做什么
/etc/bashrc 是系统的,可以让所有用户共用的
/home/friends/.bashrc 是friends当前用户下的登录的时候会去读
配置.bashrc文件可以指定某些程序在用户登录的时候就自动启动。
当你希望临时加入一个路径,使用export
export PATH=$PATH:/root 临时生效的,添加路径,让它的子进程对这个临时变量也都有效,其他的就无效
bash 产生子进程 在子进程中 父进程用export声明的 都是有用的
unset name 取消name这个变量的内容 只对当前bash或者子bash有效。对新启动的bash无效
env | grep $PATH 查看
alias用法 别名
alias wwff='ls -l /home' 临时生效
wwff 则会当别名被执行命令
通配符 (必须掌握)
* 多个字母或数字
? 1个字母或数字
[1-6] 数字在1-6之间的一个数字