文章目录

  • 1.前言
  • 2.ls 查看权限
    • 1.在 Terminal 中查看文件的权限
  • 2.chmod 修改权限
  • 3.一个使用 Python 的技巧

1.前言

在 Linux 中, 权限是一个非常重要的东西. 无时无刻不影响着你的操作. 就像有时候, 你想去百度云下载一些别人分享的文件, 可是你却发现虽然你能看到文件但是你却不能下载, 这就是一种权限. 在 Linux 中, 这种权限随处可见. 你可以设置, 让别人不能越界.

不过像我这种人, 也就一台电脑, 一个用户, 涉及不到多少权限的问题. 如果你也像我, 只有你自己在用 Linux 的电脑, 主要用它来运行你的代码. 我教你一招修改权限, 方便运行你的 Python 脚本的招数.

2.ls 查看权限

1.在 Terminal 中查看文件的权限

$ ls -l


在这里, 像-rw-rw-r–这种, 就是权限的说明

Type: 很多种 (最常见的是 - 为文件, d 为文件夹, 其他的还有l, n … 这种东西, 真正自己遇到了, 网上再搜就好, 一次性说太多记不住的).
User: 后面跟着的三个空是使用 User 的身份能对这个做什么处理 (r 能读; w 能写; x 能执行; - 不能完成某个操作).
Group: 一个 Group 里可能有一个或多个 user, 这些权限的样式和 User 一样.
Others: 除了 User 和 Group 以外人的权限.
如果有朋友对 User, group, others 这几个没什么概念的话, 我这里补充一下. User 一般就是指你, 这个正在使用电脑的人. Group 是一个 User 的集合, 最开始创建新 User 的时候, 他也为这个 User 创建了一个和 User 一样名字的 Group, 这个新 Group 里只有这个 User. 一般来说, 像一个企业部门的电脑, 都可以放在一个 Group 里, 分享了一些共享文件和权限. Others 就是除了上面提到的 User 和 Group 以外的人

例如: ----rw-r–
拆成 - (这是文件), —(这个 user 没有任何权限), rw- (这个 Group 里可以读,写), r-- (其他人只能读).

2.chmod 修改权限

好了, 我们知道了这些权限的问题, 那我们如何改写权限呢? chmod (change mode) 就是来干这个的.

通常的修改形式是

$ chmod [谁][怎么修改] [哪个文件]
$ chmod u-r t1.py        #让user没有可读的权限


[谁]
u: 对于 User 修改
g: 对于 Group 修改
o: 对于 Others 修改
a: (all) 对于所有人修改

[怎么修改]
+, -, =: 作用的形式, 加上, 减掉, 等于某些权限
r, w, x 或者多个权限一起, 比如 rx

[哪个文件]
施加操作的文件, 可以为多个

3.一个使用 Python 的技巧

我不怎么用权限这东西, 但是我却发现给 python 文件添加权限 x 还算有用的. 为什么这么说? 因为通常, 如果一个 .py 没有 x 权限, 在 terminal 中你就需要这样执行:

$ python3 t.py

如果你有了 x (可执行权限), 你运行这个文件可以直接这样打:

$ ./t.py

如果你天天要运行这个脚本, 每次运行的时候少几个字还是挺好的. 如果你决定要这样做, 你在这个 Python 脚本的开头还需要加一句话.

#!/usr/bin/python3        # 这句话是为了告诉你的电脑执行这个文件的时候用什么来加载print("This is a Python script!")

Linux基础——Linux 基本指令 nano 和 cat相关推荐

  1. 20155301 滕树晨linux基础——linux进程间通信(IPC)机制总结

    20155301 滕树晨linux基础--linux进程间通信(IPC)机制总结 共享内存 共享内存是在多个进程之间共享内存区域的一种进程间的通信方式,由IPC为进程创建的一个特殊地址范围,它将出现在 ...

  2. linux基础——linux进程间通信(IPC)机制总结

    原 linux基础--linux进程间通信(IPC)机制总结 2016年07月23日 21:33:12 yexz 阅读数:18224更多 <div class="tags-box sp ...

  3. 视频教程-赵强老师:大数据从入门到精通(1)Linux基础-Linux

    赵强老师:大数据从入门到精通(1)Linux基础 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblogic)和大数据Had ...

  4. Linux基础篇——认识指令

    前言 在我们介绍Linux的指令之前,我们先要了解一下Linux是怎么来的. 1991年10月5日,赫尔辛基大学的一名研究生Linus Benedict Torvalds在一个Usenet新闻组 (c ...

  5. linux常用删除空文件夹,Linux基础 linux系统中的批量删除文件与空文件删除的命令介绍...

    Linux基础教程linux系统中的批量删除文件与空文件删除的命令介绍 Linux资料下面删除文件或者目录命令rm(remove): Linux培训功能说明:删除文件或目录. 语 法:rm [-dfi ...

  6. Linux基础——Linux 基本指令 ls 和 cd

    文章目录 1.前言 2.cd 指令 1.返回上一级目录 2.去往子文件夹 3.返回你刚刚所在的目录 4.向上返回两次 5.去往 Home 6.去往电脑任何地方, 你需要的是一个绝对路径 3.ls 指令 ...

  7. linux基础(1)-常见指令及权限理解

    1.常见指令及权限理解 初始Linux操作系统 初识shell命令 ,了解若干背景知识. 使用常用Linux命令 了解Linux权限概念与思想,能深度理解"权限" 初步了解Linu ...

  8. Linux基础——Linux 基本指令 touch, cp 和 mv

    文章目录 1.前言 2.touch 新建 3.cp 复制 1. file1 复制成 file1copy 2.-i (interactive) 3.复制去文件夹 4.-R (recursive) 5.* ...

  9. Linux基础——Linux 基本指令 mkdir, rmdir 和 rm

    文章目录 1.前言 2.mkdir 建立文件夹 3.rmdir 移除文件夹 4.rm 移除文件 1.移除单个文件 2.-i 或 -I 有提示地移除文件 (为了避免误删) 3.-r 或 -R (recu ...

最新文章

  1. 自动化测试的优势和局限性有哪些
  2. boost::geometry::topological_dimension用法的测试程序
  3. webstorm 两个文件对比不同_DOS 入门到精通 使用 fc 命令比较两个文件,并逐一显示不同之处...
  4. kie-api_KIE-WB / JBPM控制台Ng –配置
  5. P2237 [USACO14FEB]自动完成Auto-complete
  6. c 语言从文件中读取字符串数组,C从文本文件读取到数组/字符串
  7. window7 64位下Android studio 安装genymotion模拟器
  8. 2017级面向对象程序设计——团队作业2
  9. Mysql 如何做双机热备和负载均衡 (方法一)
  10. 何川L3管理课_模块5_给评价
  11. java socket.close_java – Socket.close()在Socket.connect()期间无效
  12. HBuilder配置浏览器
  13. 51单片机入门——蜂鸣器
  14. 实战tkinter图形界面开发_Tkinter python(图形开发界面)
  15. 经典括号匹配问题——你真的明白了吗?
  16. 登出系统gif图标_来了!深度操作系统 20正式版——崭新视界,创无止境
  17. Ubuntu 小米6 LineageOS源码编译
  18. ZooKeeper报错:Unable to access datadir, exiting abnormally windows版本
  19. SQL Server 认证(Certification)
  20. java使用geotools读取shp文件

热门文章

  1. MIT App Inventor使用与入门教程
  2. 【python】一道LeetCode搞懂递归算法!#131分割回文串 #以及刷LeetCode的一点点小心得 [数据结构与算法基础]
  3. linux原有的文件系统扩展,Linux VG扩展新增硬盘并新建文件系统
  4. 代码下移快捷键_收藏细看!最全面的通达信快捷键一览
  5. 三维点云学习(2)下-Octree
  6. spring初始化在ServletContextListener实现类中获取spring注入对象
  7. 迁移是10g-11g ogg正好有用武之地N种方法
  8. Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci
  9. 前端获取的Long类型数据失真,后端这样处理就行了
  10. mybatis generator 中文注释_Mybatis提供的逆向工程