Ubuntu中调出:Ctrl+Alt+t
设置JDK:
放到/opt下 vi ~/.bashrc 三行命令
source ~/.bashrc java -version
设置VIM:
cd /usr/share/vim sudo vi vimrc ----->
set autoindent "自动缩进
set smartindent "智能缩进
set nu "行数
set autochdir
set mouse=a
1、第一次设置超级用户的密码:sudo passwd root
2、普通用户切换到超级用户:su
超级用户切换到普通用户:exit
普通用户的标识:$
超级用户的标识:#
3、查看ip地址:ipconfig/ifconfig
4、修改密码:passwd ---针对于普通用户有效
5、查看文件:cat 1) /etc/passwd 存放用户的相关信息
2) /etc/shadow 存放用户密码相关的信息
6、清空当前屏幕:clear
7、显示当前目录:pwd
8、改变目录:cd
cd 直接到家目录
cd ~ 返回到家目录
cd .. 返回父目录
cd . 返回当前目录
cd - 返回上一次操作目录
9、显示当前目录文件和目录清单:ls
ls /etc 查询/etc下的文件和目录
ls -a 显示当前目录下的所有文件(包括隐藏文件 .)
ls -R 迭代显示文件和目录
ls -l 显示文件的详细信息
ls -t 按照文件的修改时间排序之后显示
ls -d 显示目录自己的信息
10、创建文本文件:touch a.txt
11、创建目录:mkdir a
一次性创建多级目录:mkdir -p a/b
12、设置权限:chomd u g o a
文件类型:(d 目录) (- 普通文件)
13、文件拷贝:cp 拷贝文件
cp -r 拷贝目录
cp -i 提示是否要覆盖目标文件的内容
14、移除:mv 如果文件不存在就会重命名 (mv a.txt b.txt)
15、删除:rm
删除目录:(1)rmdir 删除空目录
(2)rm -r
16、帮助:man (1)一页翻:空格 (2)回退:b (3)退出:q
17、元字符:一些有特殊意义的字符,可以替代其他的字符。
1)~ 代表家目录
2)* 匹配0或者多个字符
cd
mkdir test
cd test
touch a.txt b.txt ab.txt ab abc a bc
查询test目录以a开头的文件?
ls a*
查询test目录以txt为后缀的文件?
ls *.txt
删除以b开头的文件?
rm b*
3)? 匹配单个字符(有并且只匹配一个字符)
查询test目录第二个字符为b的文件?
ls ?b*
查询test目录以a开头的文件,文件名的长度是3字符?
ls a??
4)[]从一组字符中匹配单个字符
touch link1.txt link2.txt n.txt k.txt
ls *[link]*.txt
ls *link*.txt
ls [b-fB-F]*.txt
5); 连接多个命令
cd /;ls
date;cal;pwd
date:显示时间
cal:显示当前月的日历
cal 4 2014:显示2014年4月的日历
cal 2014:显示2014年的日历
6)|:管道连接符
前一个命令的输出作为后一个命令的输入
ls -l /etc | more
more /etc/passwd
more:分屏显示内容,一次性显示一屏幕
7)>,<,>>
>:重定向输出到文件,覆盖文件的内容。
cal 4 2014 > test.txt
cal 10 2014 > test.txt
>>:重定向输出到文件,追加文件的内容。
cal 7 2013 >> test.txt
<:重定向输入到文件
cat:默认输入是键盘
中断进程:ctrl+c
cat < test.txt
cat < test.txt > a.txt
等价于---> cp test.txt a.txt
18、注意:/dev/null是unix的黑洞
一般将/dev/null作为清空其他文件。
清空文件也可以使用 : > cat.txt
: 代表没有任务操作
19、awk:处理文字程序,以行为单位来处理文字
-F指定分隔符
注意:-F和分隔符之间没有空格
'{print }':打印语句的固定格式
$1 "\t" $6
$1:分割后的第1个部分
$6:分割后的第6个部分
\t:制表符
\n:换行符
\:续行符
cat /etc/passwd | awk -F: '{print $1 "\t" $6}'
20、显示文件内容:cat ,more,head,tail
cat:
-n 或 --number 由 1 开始对所有输出的行数编号
-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
head: -c 4,显示文件头的前4个字节,
-n 5, 显示前5行
tail: -c 4,显示文件头的后4个字节,
-n 5, 显示后5行
-F :实时监控文件变更
21、vi输入:
命令格式: vi 文件名字
命令模式切换输入模式:
i:插入到光标所在位置的前边
I:插入到光标所在行的行首
a:插入到光标所在位置的后边
A:插入到光标所在行的行尾
o:插入到光标所在行的下一行
O:插入到光标所在行的上一行
输入模式切换命令模式:esc
删除文本:
x:删除一个字符
dw,2dw,3dw..:删除多少个单词
dd,2dd,3dd...:删除多少行
:3,5d :删除第3行到第5行
替换文本:重写
r:替换一个字符
cw:替换一个单词
cc:替换一行
C:替换从光标到行尾
拷贝和粘贴:
p:当前行下一行粘贴
P:当前行上一行粘贴
yw:拷贝词
yy:拷贝行
Y:拷贝行
:3,6co9:拷贝行3到行6在行9之后
:3,6m9:移动行3到行6到行9之后
保存和退出:
:w 不退出
:wq 保存退出
:q! 强制退出,不保存
:w newfile 保存成新文件
高级命令:
~:改变大小写
J:把当前行和下一行连起来
u:撤销,撤销到上一次保存点
:set nu 设置行号
:set nonu取消行号
/串:从当前行向下查找
?串:从当前行向上查找
n:查找继续
:1,$s/hello/world/g 替换全文的hello-->world
22、find:查找文件或者目录
格式:find path expression [action]
path:指定从什么地方开始找
expression:指定找文件的条件
action:指定找到文件之后干什么
-name按照文件名字查找
-mtime按照文件的修改时间查找
-print将查询出的结果打印在屏幕上
默认情况下已经有该功能了
-type按照文件类型查找
-perm按照文件的权限查找
-user按照文件的拥有者查找
-size按照文件的大小查找
默认是block=512byte
-atime按照文件的访问时间查找
查看文件的最后一次访问时间:ls -lu
find . -name "g*"
find . -name "*.txt"
find . -mtime 10 –print:10天之前,11天以内
find . -mtime +10 :10天以前(不包含第10天)
find . -mtime -10 :10天之内(包含第10天)
find . -name "*.txt" -exec rm {} \;
rm {} \; 批量删除文件,清理磁盘
-exec 调用其他函数(下一个命令)
xargs:以行的方式交给下一个命令处理
perl:备份文件
-p:指定备份文件的名字
-i:备份前文件的名字
-e:修改的条件
find . -name "*.html"| xargs perl -p -i.bak -e “s/Copyright 2004/Copyright 2005/g;”
23、grep:输出包含需要查找字符串的行的信息
如果查询的字符串中包含特殊字符,需要使用""
-i:不区分大小写
-v:不包含关键字的行
grep root /etc/passwd
grep -vi ROOT /etc/passwd | more
查看最后一个修改时间为2月18的文件?
ls -la | grep -i "2月 18"
查询服务器上姓zhang的用户的信息
cat /etc/passwd | awk -F: '{print $1}' | grep zhang
或者
grep zhang /etc/passwd
查询服务器正在做vi操作的用户的信息
w | grep vi
24、wc:统计文件有多少行,多少个单词,多少个字符
wc -l /etc/passwd
wc -w /etc/passwd
wc -c /etc/passwd
25、ps 查看当前用户当前终端启动的进程
ps -e 查看所有用户的进程
ps -f 现在当前用户当前终端的进程的详细信息
ps -ef 查看所有的进行详细信息
ps -efu root 查看root启动的进程
26、top:查看进程所占CPU的情况
如果查看某一个进程占用的内存比较多,就可以杀死该进程
27、kill:中断进程
kill -9 pid:强制性中断进程
sleep : 休眠进程
sleep 休眠的时间(秒)
sleep 1000
sleep 1000 & 休眠进程放到后台运行
jobs:查看后台正在运行的进程
fg id号:将后台进程放到前台运行
bg %1:将前后进程放到后台运行
kill %1杀死后台进程
ctrl+z:前台进程挂起
ctrl+c:强制中断
sleep 1000 &
sleep 2000 &
jobs
pkill sleep:杀死一批sleep进程
28、ftp:使用命令的方式从服务器上上传或者下载文件。
sudo apt-get update
sudo apt-get install ftpd
1)cd本机需要上传和下载的目录
2)ftp连接服务器
ftp ip地址
ftp 127.0.0.1
3)cd服务器上需要上传和下载的目录
4)改变上传和下载传输流
bin / asc(默认情况,ASCII或者纯文本文件)
5)关闭多文件传输提示(可选)
prompt on/off
6)上传或者下载
put 文件名
mput 文件名1 文件名2
get 文件名
mget 文件名1 文件名2
7)断开ftp连接
bye
29、如何设置环境变量
VAR1=hello
echo $VAR1
VAR2="hello world"
VAR2='hello world'
这种情况下””,''是一样的
VAR2=`date`
``:取命令的执行结果
echo $VAR3
30、history:查看当前终端的历史记录
history 5:显示最近5条历史记录
!n:执行历史号为n的命令
!!:执行刚刚执行过的命令
alias 显示所有的别名
修改提示符:PS1=test%
PS1="test$"
编译:javac [-d] [想要编译到哪个目录下] *.java
运行:java [-cp] [要运行哪个目录下的文件] *(字节码文件的名字)