터미널에 대한 입력으로 Unix 명령 데이터 세트가 있고 이를 사용하여 사용자 행동을 비교하고 싶습니다.
서로 다른 사용자는 서로 다른 디렉터리 및 파일(모두 서로 다른 컴퓨터에 있음)과 상호 작용합니다. 어떤 사용자가 동일한 인수/매개변수를 사용하여 동일한 명령을 사용하고 있는지 확인하고 싶습니다(그러나 다른 파일 이름/디렉토리를 인수로 사용할 수 있어서 기쁩니다).
논리적으로 이를 달성하려면 데이터 세트에서 파일 이름과 디렉터리를 제거한 다음 유사점을 찾아야 하지만 그게 내 질문입니다.
파일 이름과 디렉터리를 명령줄 인수/매개변수로 인식하는 방법은 무엇입니까?
예를 들어 주어진
ls -F thesis
thesis
파일/디렉토리로 식별하는 방법 (이 경우 의미는 이해 ls
하지만 더 광범위하게 살펴보고 실행되는 명령의 의미는 모릅니다)
답변1
당신은 할 수 없습니다.
실행하는 모든 명령의 의미를 이해해야 합니다.
명령줄에서 명령에 제공된 모든 인수는 프로그램에 전달되며, 그러면 프로그램은 원하는 대로 무엇이든 수행할 수 있습니다. 프로그램은 인수를 일관되게 해석할 필요조차 없습니다(그렇다면 아마도 덜 유용할 것입니다).
또한 일부 사용자가 철자 오류(프로그램 이름에도 나타날 수 있음), 특정 파일이 있는지 확인하려는 시도, 오해의 소지가 있는 파일 등 존재하지 않는 파일을 해결했을 수도 있다는 점을 고려해야 합니다. 나는 일부 프로그램이 주어진 매개변수가 기존 파일의 이름인지 여부에 따라 다르게 동작하는 것을 본 것 같지만 두 경우 모두 뭔가를 수행합니다.
ctrl-alt-delor에서 제안하는 탭 완성 데이터는 기본적으로 (일반적으로 사용되는) 많은 명령의 의미를 인코딩하는 방법이지만, (나는 이것을 보는 데 많은 시간을 소비하지 않았습니다) 쉘 사용자가 누구인지에 따라 달라질 수 있습니다. , 그 이후로 변경되었을 수 있습니다. 따라서 이것이 앞으로 나아갈 길을 제시할 수는 있지만 문제가 없는 것은 아닙니다.
답변2
여기에는 일부 수동 작업이 포함될 수 있습니다. 그러나 일단 명령에 대한 패턴을 생성하면 재사용이 가능해야 합니다.구성 데이터를 사용하여 탭 완성을 수행할 수 있는지 궁금합니다.일반적으로 (항상은 아니지만) 알고 있습니다.