Advertisement
egor230

Создать ярлык

Feb 8th, 2024 (edited)
773
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 4.68 KB | Source Code | 0 0
  1. ```
  2. #!/bin/bash
  3. gnome-terminal -- bash -c 'sleep 1;
  4. current_directory=$(pwd)   # Получаем текущую директорию с обработкой пробелов
  5. echo "$current_directory"
  6. selected_files=("$NEMO_SCRIPT_SELECTED_FILE_PATHS")  # Получаем имена выбранных файлов
  7.  
  8. for file in "${selected_files[@]}"; do  # Перебираем выбранные файлы
  9.    file_name=$(basename -- "$file")    # Имя файла без пути
  10.    file_name_no_extension="${file_name%.*}"
  11.    icon="${file%.*}"
  12.    icon="${icon}.png"
  13.    desktop_file_name="${file_name_no_extension// /_}.desktop"
  14.    # Создаем имя для .desktop файла (заменяем пробелы на подчеркивания или что-то подобное)
  15.    file1="${file%?}"
  16.    desktop_file_content="[Desktop Entry]
  17. Name=$desktop_file_name
  18. Exec=xdg-open \"$file1\"
  19. Icon=$icon
  20. Terminal=false
  21. Type=Application"
  22.    desktop_file_path="$current_directory/$desktop_file_name"    # Полный путь для .desktop файла
  23.    echo "$desktop_file_content" > "$desktop_file_path"    # Записываем содержимое в .desktop файл
  24. done
  25.  
  26. chmod +x "$desktop_file_path"
  27. sleep 3  # Подождать 3 секунды
  28. exit
  29. exec bash'
  30.    ```
  31.  
  32. ```
  33. #!/bin/bash
  34. current_directory=`pwd` # Получаем текущую директорию
  35. # Копируем текущую директорию в буфер обмена
  36. echo -n "$current_directory" | xclip -selection clipboard
  37. ```
  38.  
  39. Запустить в терминале
  40.  
  41. ```
  42. #!/bin/bash
  43. gnome-terminal -- bash -c 'sleep 1;
  44. current_directory=$(pwd)   # Получаем текущую директорию с обработкой пробелов
  45. cd "$current_directory";
  46. selected_files=("$NEMO_SCRIPT_SELECTED_FILE_PATHS")  # Получаем имена выбранных файлов
  47. file_name=$(basename "${selected_files[0]}")
  48. echo "$file_name"
  49. chmod +x "$file_name"
  50. ./"$file_name"  # Запускаем первый файл из выделенных
  51. read;
  52. exit
  53. exec bash'
  54. ```
  55.  
  56. Запустить python скрипт в виртуальном окружении.
  57.  
  58. ```
  59. #!/bin/bash
  60. gnome-terminal -- bash -c 'sleep 1;
  61. file=("$NEMO_SCRIPT_SELECTED_FILE_PATHS");  # Получаем имена выбранных файлов  
  62. selected_file="${file%?}"
  63. cd /mnt/807EB5FA7EB5E954/софт/виртуальная\ машина/linux\ must\ have/python_linux/Project && source myenv/bin/activate && python "$selected_file";
  64. read;
  65. exit;
  66. exec bash'
  67.  
  68. ```
  69.  
  70.  
  71. копировать полный путь к файлу
  72.  
  73. ```
  74. #!/bin/bash
  75. gnome-terminal -- bash -c ' selected_files=("$NEMO_SCRIPT_SELECTED_FILE_PATHS")  # Получаем имена выбранных файлов
  76. file="${selected_files[0]};"
  77. echo "$file1";
  78. sleep 5;
  79. echo -n "$file1" | xsel --clipboard --input
  80. exit;
  81. exec bash'
  82.  
  83. ```
  84.  
  85. Создать sh скрипт
  86.  
  87. ```
  88. #!/bin/bash
  89. cd "/mnt/807EB5FA7EB5E954/софт/виртуальная машина/linux must have/python_linux/Project"
  90. source myenv/bin/activate
  91.  
  92. selected_files=("$NEMO_SCRIPT_SELECTED_FILE_PATHS")  # Получаем имена выбранных файлов
  93. python "/mnt/807EB5FA7EB5E954/софт/виртуальная машина/linux must have/python_linux/Project/Создать скрипт.py" $selected_files
  94. exit
  95. ```
  96.  
  97. ```
  98. import os, subprocess, sys
  99. #  Получаем аргументы командной строки
  100. num_args = len(sys.argv)# Получаем количество аргументов
  101. url = ""
  102. for arg in sys.argv[1:]:
  103.     url += str(arg) + " "# Объединяем аргументы через цикл for
  104.  
  105. url = url.strip()# os.chdir(url)# Убираем лишний пробел в конце строки
  106. directory = os.path.dirname(url) # Получение имени файла
  107. filename = os.path.basename(url)
  108.  
  109. if '.' in filename:  # Удаление расширения
  110.  filename_without_extension = filename[:filename.rfind('.')]#  os.remove(os.path.join(url, filename))
  111. else:
  112.   filename_without_extension = filename
  113.  
  114. show_list_id = '''#!/bin/bash
  115. cd \"{0}\";
  116. ./\"{1}\";
  117. '''.format(directory,filename)  # показать список устройств в терминале
  118. file=str(os.path.join(directory, filename_without_extension))+".sh"
  119. file1=str(os.path.join(directory, filename)).replace('\'','')
  120. with open(file, 'w') as file:    # Записываем текст в файл
  121.    file.write(show_list_id)
  122.  
  123. show_list_id = '''#!/bin/bash\n
  124. cd "{0}";\n
  125. chmod +x "{1}"\n
  126. chmod +x "{2}"\n'''.format(directory,file, file1,)
  127. subprocess.run(['bash', '-c', show_list_id])
  128. ```
  129.  
  130.  
  131.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement