sublime text 软件
一个文本编辑工具(编写代码常用),功能强大。


任务:
      1、
      自己查询一下 Sublime text3 的安装方法
      用 Sublime text3 建立 Python 编辑工具。
      2、查询一下 Sublime text3 的常用快捷键




file 命令
   查看文件类型的命令
   file  文件


clear 命令
   清屏
   
   Ctrl + l
cat 命令
    查看文件的内容
    内容会在终端(标准输出)上显示。
    
    cat  文件名
    
ctrl + c 可以尝试终止程序


标准输出重定向
1、 >  
  命令  >  文件


  如果文件不存在,创建新文件
  如果文件存在,覆盖文件


  把本来应该输出到标准输出(终端)的内容输出其他文件


  cat  examples.desktop  > 1.txt
2、 >>
   命令  >>  文件
   在文件尾部追加内容
   如果文件不存在,则创建新文件
   如果文件存在,则在文件尾部追加内容




管道:
   把前一个命令的输出作为后一个命令的输入    
     |
   cat  examples.desktop | more




         
more 命令
   查看文件内容,停在第一屏
   more 文件


   使用 空格键 翻屏(如果多于一屏,翻到最后,退出)
   使用 回车键 翻行
   使用 q 键 退出
  


head 命令
   显示文件的头几行,默认是10行
   head  文件名


   如何改变显示行的数量?
   查帮助


tail 命令
   显示文件尾几行,默认10行
   tail  文件名


   如何改变显示的行数?
   查帮助   




chmod 命令
   改文件权限
   chmod  模式  文件
   
   chmod a+x test.sh
   chmod a-x test.sh


   chmod a-r test.sh
   chmod a+r test.sh
   chmod u+w test.sh


   chmod  模式  文件
      用户:所有者,同组用户,其他用户
              u       g         o
             a:所有用户(所有者,同组用户和其他用户)


      权限:r读,w写,x执行
      
      加权限:+
      减权限:-


   chmod a+w  test.sh   所有人都加写权限
   chmod u+w  test.sh   所有者(属主)加写权限
   chmod g+w  test.sh   同组用户加写权限
   chmod o+w  test.sh   其他用户加写权限


   chmod a-w  test.sh   所有人都减写权限
   chmod u-w  test.sh   所有者(属主)键写权限
   chmod g-w  test.sh   同组用户减写权限
   chmod o-w  test.sh   其他用户减写权限


   使用权限位掩码的方式
     属主 同组 其他
     rwx  rwx  rwx
     -
     r
     0
     1
     ---r--r-- 
     000 100 100 
     001   执行   1   x
     010   写     2   w
     100   读     4   r
     110          6  rw-
     111          7  rwx
     101          5  r-x
     011          3  -wx


     rwx r--r-- 
       1
      10
     100
     0+0+0  0  ---
     0+0+1  1  --x 
     0+2+0  2  -w-
     4+2+1  7  rwx 所有
     4+0+1  5  r-x
     4+2+0  6  rw-


      
     chmod 555 test.sh
     chmod 644 test.sh


tar 命令
   打包、压缩、解压缩命令
   
   打包:
   tar  cvf  文件名  目录/文件
        
        cvf:选项 
        文件名:要产生的打包好后的文件名
                通常以  .tar  结尾(扩展名)
                
        目录/文件:就是要被打包的目录/文件
   
   展开:
   tar  xvf  文件名
   
   打包并压缩:
   tar  cvfz  文件名  目录/文件
        cvfz:选项 
        文件名:要产生的打包好后的文件名
                通常以  .tar.gz  结尾(扩展名)
                        .gz
                
        目录/文件:就是要被打包,压缩的目录/文件




   展开:
   tar  xvfz  文件名
   
find 命令
   查找文件
   以文件名做查找依据为例:
   find   目录  -name   文件名
         


         目录:从哪个目录开始找
         文件名:要查找的文件,可以使用通配符
                 加"" 括起来




grep 命令
   搜索包含指定内容的文件
   在某个文件中搜索指定内容
   
   grep  选项  要查找的内容   文件(可以是多个)
   
         要查找的内容可以用 "" 扩起来
   


   作业:查看 grep 帮你 确定 -r 选项的作用
                        确定 -n 选项的作用
   
wc命令
  统计文档有多少行,字符,词
  wc  文件
  
ps命令
  查看进程的命令(程序运行后,会形成进程)
  ps aux
  ps  aux | grep vim


kill命令
  杀掉进程
  kill  进程id
  (通常使用ps查询 进程id)
      -9  


pkill命令
  pkill  进程名称
  -9 选项      

sudo 命令
  是某些命令以root权限运行(不用切换到root状态)
  sudo  命令  ...


 怎么切换终端的标签窗口:
 新建标签窗口:
   ctrl + shift + t
 在标签窗口间切换使用 alt+数字
 
which 查询程序的位置
   which  程序名


whereis 查询程序、man手册、库所在位置
   whereis 程序名

  


* 计算机基础
* 操作系统
* 终端工具
* 进制的表示方法
* 目录树
* shell基础

计算机基础概念

cpu   计算功能的核心部件

寄存器  
辅助cpu计算的存储器  存取速度快,空间小

内存(主存储器) 
存储程序的运行状态  存取速度较快,空间较小

磁盘(外存储器)
存储文件    存储速度慢   空间大

输入输出设备 : 键盘,鼠标    显示器


操作系统

PC
windows   【Mac os    Unix】    Linux  

移动端
android    ios


Linux 操作系统

开源 : 源代码开放  

GNU ---》 开源代码协议   

红帽    ubuntu    Sun  。。。

linux操作系统内核功能

内存分配    进程选择   cpu资源分配。。。。。
终端使用 (tarena@tedu:~$)

    tarena  @  tedu  :     ~       $/#   ($-普通用户   #-超级管理员)
  用户名  计算机名 当前位置 命令提示符  (普通用户进入超级管理员 sudo su;退出 exit)
进制使用

  十进制  满 10 进 1      0~9
  二进制                    0~1
  八进制(0)                 0~7
  十六进制(0x)              0~9,a b c d e f



十六进制

0  1   10  11  100  101  110   111  1000  1001  
                                      8

1010   1011  1100  1101   1110  1111


二  --- 》 十六
11001001101001 ---》 0x3269

0x3f7a   -----》0011 1111 0111 1010

十       二          十六
45  --》101101 ---》 0x2d 


linux 路径

tarena@tedu:~ $
当前所在位置即当前正在工作的文件夹

文件夹 ---》目录
~ : 表示当前用户的主目录

每一个用户系统都会自动为其创建一个文件夹,为这个用户的主文件夹

linux为典型的树形目录结构,每个文件位置都可以通过一定的路径来表示

如何表示一个文件的路径

绝对路径 : 从根目录开始逐层的描述某个文件的位置
特征 : 一定是以'/'作为开头

~  代表  /home/tarena 

相对路径 : 以当前工作位置为基准对目标位置进行描述
特征 : 一定不是以‘/’开头

特殊符号 :  ..  表示当前目录的上一级
              .  表示当前目录


ls  : 显示当前文件夹下的内容
cd software : 进入一个文件夹


计算机的部分概念
操作系统
进制转换  十进制  二进制  八进制  十六进制
           39     100111   47      27


路径表达  绝对路径   相对路径
~  /home/tarena
.  当前目录
..  上一级目录 




shell命令


命令  [选项]  [参数]


* 三个部分,每个部分之间一定要有空格
* 选项和参数可以没有,有时候选项和参数的位置比较灵活


cmd  -r abc   
cmd  abc  -r
cmd  -r abc  -f def


选项 : 辅助命令进行功能的丰富细化
        选项必须以 - 作为引导   ls -l
	如果有多个选项可以表示如下
	ls -l -a 《=====》  ls -la


参数 : 命令要操作的目标 并不是所有的命令都可以加参数
*一般参数为一个路径或者精确到一个文件


打开终端
ctrl + alt + t    打开一个主目录终端
ctrl + shift + n   打开一个当前目录终端
ctrl + shift + t   打开一个当前目录终端


ls  查看某个目录下的内容
   -l 显示详细信息 


d(文件类型)   rwxrwxr-x(文件权限) 20 tarena tarena  4096 7月  17  2017 
anaconda3


bc   d        -       lsp  : linux下7种文件类型
   文件夹  普通文件
文件权限 : 读写执行


   -a 显示隐藏文件
 
 linux下以.开头的都是隐藏文件




mkdir  创建文件夹


mkdir  文件夹名称
      -p  可以创建多级的目录


rmdir 删除文件夹


rmdir  要删除的目录名
* rmdir不能删除非空目录


cd  切换工作目录


cd [路径]


e.g.
cd ../图片
cd /home/tarena/音乐
cd ~/音乐


cd  表示回到主目录
cd - 回到上一次工作的目录


touch 创建一个空白文件


touch  文件名


rm 删除一个文件


rm [选项] 文件/文件夹
   -r   删除一个文件夹及文件夹内所有内容
   -i   删除前提示(y,n)
   -f   强制删除
删除非空文件夹: rm  -rf  文件夹


man  提供shell帮助


man  命令


tab自动补全
如果唯一确定路径会自动补全


clear  
ctrl + l   清理屏幕


练习 


在主目录下创建如下结构


mymod (文件夹)
   __init__.py  文件
   meub.py   文件
   games      文件夹
	contra.py 文件
	logs   文件夹
   office     文件夹
	__init__.py 文件
	tanks.py 文件


cp 复制文件或文件夹到某个位置


cp [选项]  文件/文件夹(可以为多个)   目标位置


cp  re   python
1. 如果第二个参数是一个存在路径文件夹,则表示将re 拷贝到该位置
2. 如果第二个参数是一个不存在的路径文件,则表示re
另存为一个内容


-a  如果要复制的内容是文件夹则使用该选项


mv  移动一个文件或文件夹 


mv  文件/文件夹(可以为多个)   目标位置


参数和cp命令相同,移动文件夹也不需要选项


通配符:
* 表示任意0个或者多个字符
?表示任意一个字符
[abcd] 表示任意一个在中括号中的字符


history 查看命令记录


history  num  表示查看num条记录
通过↑ ↓ 可以操作历史命令


cat 查看一个文件中的内容


cat   文件


find 根据文件名查找一个文件


find  路径  -name  “文件名”
* find可以查找某个目录及其子目录中是否有目标
e.g.
find . -name re


grep  在文件中查找某个字符串


grep  ‘字符串’   文件
	-n  查找的同时显示行号
	-r  可以在一个目录下查找其子目录中是否有该     字符串


grep 'hello world' -nr  PycharmProjects/


临时管理员权限: 在命令前加 sudo




chmod 修改文件的权限  读写执行


chmod   权限表述   要修改的文件


用户  用户组  其他用户
rwx   rwx     r-x
111   111     101
7     7       5
r--   r--     ---
4     4       0


e.g.
chmod 744 file


a (all)  +/-  r/w/x
u (user)
g (group)
o (others)


e.g.  chmod g+w file




zip 压缩 


zip  压缩包名   要压缩文件列表


e.g.   zip test.zip core re  file


unzip 解压压缩包


unzip  压缩包名
e.g.  unzip test.zip




tar 


bz2  gz 
bz2 压缩率 高于 gz


压缩
bz2
-c 创建归档
-j 使用bz2格式
-v 显示压缩过程
-f 指定压缩文件


e.g.   tar -cjvf  file.tar.bz2 file*


gz
-z 使用gz格式
e.g.  tar -czvf  file.tar.gz file*


解压 
-x  解压


e.g.  tar -xvf file.tar.bz2 


练习 : 家目录下创建file1  file2 file3 
        用bz2压缩
	移动到音乐目录下
	在该目录下解压


exit  关闭终端


sudo apt-get install  软件名


sudo reboot  重启


程序员文本编辑器


Nodepad
sublime
vim


集成开发工具
vc++
pycharm


sublime使用


subl 打开编译器
subl 文件
subl 文件夹


侧边栏
view -- side bar  show ....
ctrl + k   b


打开文件对应位置的终端
右键---》 open terminal here


字体大小
ctrl + =  放大
ctrl + -  缩小


复制  ctrl + c
粘贴  ctrl  + v
撤销  ctrl  + z
保存  ctrl  + s


view -- Layout ---》 选择显示几个窗口