0

Gollum wiki で孤立したページ (リンクのないページ) を見つけるにはどうすればよいですか?

私は bash スクリプト (以下を参照) を作成しようとしましたが、名前に特殊文字 (、)、/ を含むページではうまく機能しないようです。

#!/bin/bash
found=""
find . -name HelpPages -prune -o -name '*.md' -type f -print0 | while IFS= read -r -d '' f; do
  escaped=$(echo $f | sed -e "s/.md//g")
  escaped=$(echo $escaped | sed -e "s/.\///g")
  escaped=$(echo $escaped | sed -e "s/(/\\\\(/g")
  escaped=$(echo $escaped | sed -e "s/)/\\\\)/g")
  escaped=$(echo $escaped | sed -e "s/\.\///g")
  escaped=$(echo $escaped | sed -E 's/[- ]/\[- \/\]/g')
  escaped=$(echo $escaped | sed -E 's/ /\\ /g')

  found=$(grep -i -r "[\|\[]$escaped\]" *.md)

  echo "_________"
  echo "Processing $escaped file..."
  if [ -n "$found" ]; then
    echo "found: $f"
    echo "$found"
  else
    echo "NOT found: $f"
  fi

done

*.mdこのスクリプトは、最初にディレクトリ内でファイル名のパターンに一致するファイルを見つけます。次に、 などのすべてのファイル名に対してThe-event-log-(errors-warnings).md、スクリプトは次のいずれかのリンクを見つける必要があります。

[[The event log (errors/warnings)]]
[[The event log (errors warnings)]]
[[The-event-log-(errors-warnings)]]
[[The event log|The-event-log-(errors-warnings)]]
4

1 に答える 1