실행 파일이 시스템에 표시하는 이름을 변경하는 방법

실행 파일이 시스템에 표시하는 이름을 변경하는 방법

언급하는 것을 잊어 버렸습니다. Suse Tumbleweed에서 실행되고 데스크탑은 KDE Plasma입니다.

내 디렉토리에 bin심볼릭 링크 가 있습니다 mpv.

$ ls -l bin/Play 
lrwxrwxrwx 1 boffi users 12 Feb 11 12:33 bin/Play -> /usr/bin/mpv

Play임의의 음악 파일을 호출하는 스크립트가 있습니다.

$ cat bin/play_alarm 
#! /usr/bin/bash

files=($(find $HOME/Music/$1 -type f))
n_files=${#files[@]}
index=$(($RANDOM%$n_files))
file=${files[$index]}
body=$(
  echo $file | sed -E '
    s./home/boffi/Music/..
    s./[01][0-9]_./.
    s/\..*$//
    s./. → .g
    s._. .g
    s| → ([^→]+)$| → <b>\1</b>|')
notify-send -u low -a "The Alarm Player" --expire-time=10000 Playing "$body" &
Play --no-video --no-terminal ${files[$index]} 

mpv내가 이해한 바로는 그 이름을 사용하여 특정 문제를 해결할 수 있지만mpvPlay

$ bin/play_alarm & sleep 10 ; killall Play ; sleep 2 ; killall mpv
[1] 1385
Play: no process found
$ Terminated

[1]+  Exit 143                bin/play_alarm
$ 

내 질문은 "실행 파일이 시스템에 표시하는 이름을 변경하는 방법“물론 내가 뭔가 잘못했거나, 아니면 심각한 오해를 하고 있었죠.

부록묻기 전에 play_alarm명령줄에서 시작하면 이를 사용하여 종료할 수 있지만 killall play_alarm일반적으로 play_alarm플라즈마 데스크렛에 의해 시작되고 그런 다음

  1. killall play_alarm작동하지 않습니다.
  2. killall Play작동하지 않습니다.
  3. killall mpv경고 및 mpv실행 중인 모든 문제를 제거합니다.

폴리스티렌PID를 임시 파일에 저장하라고 제안했다면 저는 그렇게 하지 않는 편이 낫겠지만, 다른 모든 방법이 실패한다면...

답변1

나는 이것을 시도했고 sleep다음과 같은 관찰을 얻었습니다.

ln -s /usr/bin/sleep  slapen
./slapen 900 &

ps -ef | grep slapen그러면 다음이 제공됩니다.

ljm      2623965 2534378  0 16:53 pts/5    00:00:00 ./slapen 900
ljm      2623968 2534378  0 16:54 pts/5    00:00:00 grep slapen

따라서 프로시저 이름은 귀하가 제안한 이름 slapen이 아닙니다 .sleep

pkill slapen

다음을 제공합니다:

[1]+  Terminated              ./slapen 900

그것이 당신에게 필요한 것 같습니다.

답변2

질문에 대한 내 의견을 명확히하기 위해,

$ ls -l ~/bin/Play
lrwxrwxrwx 1 boffi users 12 Feb 11 12:33 /home/boffi/bin/Play -> /usr/bin/mpv
$ Play --no-terminal Music/Aldous_Harding/Party/06_Horizon.opus & sleep 3 ; ps
[1] 16098
  PID TTY          TIME CMD
11599 pts/4    00:00:00 bash
16098 pts/4    00:00:00 mpv
16121 pts/4    00:00:00 ps
$ 

반면에

$ ls ~/bin/mysleep /home/boffi/bin/mysleep
$ mysleep 10 & ps 
[1] 22546
  PID TTY          TIME CMD
11599 pts/4    00:00:00 bash
22546 pts/4    00:00:00 mysleep
22547 pts/4    00:00:00 ps
$ 

따라서 우리는 어떤 이유에서든 또는 아무 이유 없이 mpv이름이 다시 변경되었다고 결론을 내릴 수 있습니다 mpv.

관련 정보