Forgot password?
 Create new account
View 107|Reply 0

Linux列出任何人有权读取的文件

[Copy link]

3147

Threads

8493

Posts

610K

Credits

Credits
66163
QQ

Show all posts

hbghlyj Posted at 2023-5-24 05:15:02 |Read mode
首先列出当前目录的文件(例子的网址是https://users.ox.ac.uk/~dpmp0062/)
  1. ls -l /nfs-mounts/ucalegon.it.ox.ac.uk/web/users/ucalegon.it.ox.ac.uk/2/4/dpmp0062/public_html
Copy the Code
输出
  1. -rwxrwxrwx  1 dpmp0062 users  848975 Apr 12  2017 B3..pdf
  2. -rwxrwxrwx  1 dpmp0062 users  830643 Apr 12  2017 B3.pdf
  3. -rwxrwxrwx  1 dpmp0062 users  775965 Apr 12  2017 Black Holes and Gravity Waves.pdf
  4. -rw-r--r--  1 dpmp0062 users   44225 Apr 18  2019 CF_1.pdf
  5. -rwxr-xr-x  1 dpmp0062 users   39990 May  4  2021 CF_1_Sol.pdf
  6. -rw-r--r--  1 dpmp0062 users   63883 Apr 18  2019 CF_2.pdf
  7. -rwxr-xr-x  1 dpmp0062 users   36504 May  4  2021 CF_2_Sol.pdf
  8. -rw-r--r--  1 dpmp0062 users   62267 Apr 18  2019 CF_3.pdf
  9. -rwxr-xr-x  1 dpmp0062 users   33368 May  4  2021 CF_3_Sol.pdf
  10. -rw-r--r--  1 dpmp0062 users   60869 Apr 18  2019 CF_4.pdf
  11. -rwxr-xr-x  1 dpmp0062 users   32495 May  4  2021 CF_4_Sol.pdf
  12. -rwxrwxrwx  1 dpmp0062 users  218435 Apr 20  2020 CV.pdf
  13. -rwxr-xr-x  1 dpmp0062 users  297965 Jun 18  2019 Complex_functions_V1.pdf
  14. -rw-r--r--  1 dpmp0062 users  323716 Apr 19 16:29 Complex_functions_V2.pdf
  15. -rwxrwxrwx  1 dpmp0062 users 4196613 Feb 27  2018 Cosmology_Figures.pdf
  16. -rwxrwxrwx  1 dpmp0062 users 2886352 Apr 12  2017 DistanceLadder.pdf
  17. -rwxr-xr-x  1 dpmp0062 users 1844705 Mar  7  2020 Final.pdf
  18. -rwxrwxrwx  1 dpmp0062 users       0 Apr 12  2017 GRCCollection2012.pdf
  19. -rwxrwxrwx  1 dpmp0062 users  122892 Apr 12  2017 GRRevision.pdf
  20. -rwxrwxrwx  1 dpmp0062 users  122892 Feb 27  2018 GRRevision2011-2012.pdf
  21. -rwxrwxrwx  1 dpmp0062 users  142962 Apr 12  2017 GRRevisionSheet2011-2012.pdf
  22. -rwxr-xr-x  1 dpmp0062 users  375872 May 21  2019 Past_Exam.pdf
  23. -rwxr-xr-x  1 dpmp0062 users 4188978 May 21  2019 Past_Exam_Sol_JW.pdf
  24. drwxr-xr-x 12 dpmp0062 users    4096 Apr 19 16:31 Pedro_Ferreira
  25. -rwxrwxrwx  1 dpmp0062 users  101502 Feb 27  2018 ProblemSheet.pdf
  26. -rw-r--r--  1 dpmp0062 users  559170 May  2  2022 Riemann_surface_log.jpg
  27. -rw-r--r--  1 dpmp0062 users  371797 May  2  2022 Riemann_surface_sqrt.png
  28. -rwxrwxrwx  1 dpmp0062 users 2410678 Feb 27  2018 Tests of GR.pdf
  29. -rwxrwxrwx  1 dpmp0062 users 1986010 Apr 12  2017 Tests.pdf
  30. -rwxrwxrwx  1 dpmp0062 users  218282 Apr 12  2017 Thermal.pdf
  31. -rw-r--r--  1 dpmp0062 users     322 Feb 27  2018 index.html
  32. -rwx------  1 dpmp0062 users 7818211 Apr 12  2017 nasa_bhsimulations.mpg
  33. -rwx------  1 dpmp0062 users 7499795 Apr 12  2017 nice_model.mov
Copy the Code

ls -l的第1列是权限. 如果权限是-rwx------则无法从外网访问,例如最后一行nice_model.mov从外网访问显示You don't have permission to access this resource.
那么如何列出可以从外网访问的文件? 用正则表达式^.......r匹配,第1个字符若为d则为目录,若为-则为普通文件,它后面的9个字符,第6-9个字符是所有人的权限,第6个若为r则任何人有权读取. 在这个例子中
  1. ls -l /nfs-mounts/ucalegon.it.ox.ac.uk/web/users/ucalegon.it.ox.ac.uk/2/4/dpmp0062/public_html | grep -e "^.......r"
Copy the Code
输出
  1. -rwxrwxrwx  1 dpmp0062 users  848975 Apr 12  2017 B3..pdf
  2. -rwxrwxrwx  1 dpmp0062 users  830643 Apr 12  2017 B3.pdf
  3. -rwxrwxrwx  1 dpmp0062 users  775965 Apr 12  2017 Black Holes and Gravity Waves.pdf
  4. -rw-r--r--  1 dpmp0062 users   44225 Apr 18  2019 CF_1.pdf
  5. -rwxr-xr-x  1 dpmp0062 users   39990 May  4  2021 CF_1_Sol.pdf
  6. -rw-r--r--  1 dpmp0062 users   63883 Apr 18  2019 CF_2.pdf
  7. -rwxr-xr-x  1 dpmp0062 users   36504 May  4  2021 CF_2_Sol.pdf
  8. -rw-r--r--  1 dpmp0062 users   62267 Apr 18  2019 CF_3.pdf
  9. -rwxr-xr-x  1 dpmp0062 users   33368 May  4  2021 CF_3_Sol.pdf
  10. -rw-r--r--  1 dpmp0062 users   60869 Apr 18  2019 CF_4.pdf
  11. -rwxr-xr-x  1 dpmp0062 users   32495 May  4  2021 CF_4_Sol.pdf
  12. -rwxrwxrwx  1 dpmp0062 users  218435 Apr 20  2020 CV.pdf
  13. -rwxr-xr-x  1 dpmp0062 users  297965 Jun 18  2019 Complex_functions_V1.pdf
  14. -rw-r--r--  1 dpmp0062 users  323716 Apr 19 16:29 Complex_functions_V2.pdf
  15. -rwxrwxrwx  1 dpmp0062 users 4196613 Feb 27  2018 Cosmology_Figures.pdf
  16. -rwxrwxrwx  1 dpmp0062 users 2886352 Apr 12  2017 DistanceLadder.pdf
  17. -rwxr-xr-x  1 dpmp0062 users 1844705 Mar  7  2020 Final.pdf
  18. -rwxrwxrwx  1 dpmp0062 users       0 Apr 12  2017 GRCCollection2012.pdf
  19. -rwxrwxrwx  1 dpmp0062 users  122892 Apr 12  2017 GRRevision.pdf
  20. -rwxrwxrwx  1 dpmp0062 users  122892 Feb 27  2018 GRRevision2011-2012.pdf
  21. -rwxrwxrwx  1 dpmp0062 users  142962 Apr 12  2017 GRRevisionSheet2011-2012.pdf
  22. -rwxr-xr-x  1 dpmp0062 users  375872 May 21  2019 Past_Exam.pdf
  23. -rwxr-xr-x  1 dpmp0062 users 4188978 May 21  2019 Past_Exam_Sol_JW.pdf
  24. drwxr-xr-x 12 dpmp0062 users    4096 Apr 19 16:31 Pedro_Ferreira
  25. -rwxrwxrwx  1 dpmp0062 users  101502 Feb 27  2018 ProblemSheet.pdf
  26. -rw-r--r--  1 dpmp0062 users  559170 May  2  2022 Riemann_surface_log.jpg
  27. -rw-r--r--  1 dpmp0062 users  371797 May  2  2022 Riemann_surface_sqrt.png
  28. -rwxrwxrwx  1 dpmp0062 users 2410678 Feb 27  2018 Tests of GR.pdf
  29. -rwxrwxrwx  1 dpmp0062 users 1986010 Apr 12  2017 Tests.pdf
  30. -rwxrwxrwx  1 dpmp0062 users  218282 Apr 12  2017 Thermal.pdf
  31. -rw-r--r--  1 dpmp0062 users     322 Feb 27  2018 index.html
Copy the Code
只打印最后一列用awk '{print $NF}' 参见awk - Printing the last column of a line in a file
  1. ls -l /nfs-mounts/ucalegon.it.ox.ac.uk/web/users/ucalegon.it.ox.ac.uk/2/4/dpmp0062/public_html | grep -e "^.......r" | awk '{print $NF}'
Copy the Code

输出
  1. B3..pdf
  2. B3.pdf
  3. Waves.pdf
  4. CF_1.pdf
  5. CF_1_Sol.pdf
  6. CF_2.pdf
  7. CF_2_Sol.pdf
  8. CF_3.pdf
  9. CF_3_Sol.pdf
  10. CF_4.pdf
  11. CF_4_Sol.pdf
  12. CV.pdf
  13. Complex_functions_V1.pdf
  14. Complex_functions_V2.pdf
  15. Cosmology_Figures.pdf
  16. DistanceLadder.pdf
  17. Final.pdf
  18. GRCCollection2012.pdf
  19. GRRevision.pdf
  20. GRRevision2011-2012.pdf
  21. GRRevisionSheet2011-2012.pdf
  22. Past_Exam.pdf
  23. Past_Exam_Sol_JW.pdf
  24. Pedro_Ferreira
  25. ProblemSheet.pdf
  26. Riemann_surface_log.jpg
  27. Riemann_surface_sqrt.png
  28. GR.pdf
  29. Tests.pdf
  30. Thermal.pdf
  31. index.html
Copy the Code

发现有些文件名(如Tests of GR.pdf)含空格, 只打印最后一列则不是完整的文件名, 需要用awk '{for(i=9; i<=NF; i++) printf "%s ", $i; printf "\n"}'打印第9列直到最后一列
  1. ls -l /nfs-mounts/ucalegon.it.ox.ac.uk/web/users/ucalegon.it.ox.ac.uk/2/4/dpmp0062/public_html | grep -e "^.......r" | awk '{for(i=9; i<=NF; i++) printf "%s ", $i; printf "\n"}'
Copy the Code
现在输出的都是完整的文件名了:
  1. B3..pdf
  2. B3.pdf
  3. Black Holes and Gravity Waves.pdf
  4. CF_1.pdf
  5. CF_1_Sol.pdf
  6. CF_2.pdf
  7. CF_2_Sol.pdf
  8. CF_3.pdf
  9. CF_3_Sol.pdf
  10. CF_4.pdf
  11. CF_4_Sol.pdf
  12. CV.pdf
  13. Complex_functions_V1.pdf
  14. Complex_functions_V2.pdf
  15. Cosmology_Figures.pdf
  16. DistanceLadder.pdf
  17. Final.pdf
  18. GRCCollection2012.pdf
  19. GRRevision.pdf
  20. GRRevision2011-2012.pdf
  21. GRRevisionSheet2011-2012.pdf
  22. Past_Exam.pdf
  23. Past_Exam_Sol_JW.pdf
  24. Pedro_Ferreira
  25. ProblemSheet.pdf
  26. Riemann_surface_log.jpg
  27. Riemann_surface_sqrt.png
  28. Tests of GR.pdf
  29. Tests.pdf
  30. Thermal.pdf
  31. index.html
Copy the Code

这些是按文件名A-Z排序的,若按修改时间排序,在ls -l加上-t得到
  1. ls -lt /nfs-mounts/ucalegon.it.ox.ac.uk/web/users/ucalegon.it.ox.ac.uk/2/4/dpmp0062/public_html | grep -e "^.......r" | awk '{for(i=9; i<=NF; i++) printf "%s ", $i; printf "\n"}'
Copy the Code

这些文件(其中Pedro_Ferreira是一个目录,其它的是普通文件)都可以从外网访问,从新到旧排序:
Pedro_Ferreira
Complex_functions_V2.pdf
Riemann_surface_log.jpg
Riemann_surface_sqrt.png
CF_4_Sol.pdf
CF_3_Sol.pdf
CF_2_Sol.pdf
CF_1_Sol.pdf
CV.pdf
Final.pdf
Complex_functions_V1.pdf
Past_Exam_Sol_JW.pdf
Past_Exam.pdf
CF_4.pdf
CF_3.pdf
CF_2.pdf
CF_1.pdf
Tests of GR.pdf
ProblemSheet.pdf
GRRevision2011-2012.pdf
Cosmology_Figures.pdf
index.html
Thermal.pdf
Tests.pdf
GRRevisionSheet2011-2012.pdf
GRRevision.pdf
GRCCollection2012.pdf
DistanceLadder.pdf
Black Holes and Gravity Waves.pdf
B3.pdf
B3..pdf

手机版Mobile version|Leisure Math Forum

2025-4-20 22:22 GMT+8

Powered by Discuz!

× Quick Reply To Top Return to the list