SharePointのドキュメントのURLが長いことに対する次善の策
SharePointの!!!!!!!! URLが!!!!!!!! 長過ぎる!!!!!!!!
動機¶
SharePointのドキュメントのURLが長すぎてちょいちょい困る
メールを書いていた時のこと
hogehogeさま kanataです。 ご要望のドキュメントは以下になります。 https://example.sharepoint.com/teams/xxxxxxxxxx/Share%20Document/General/ %E5%8F%82%E8%80%83%E8%B3%87%E6%96%99/%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92 %E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/01_%E8%A6%81%E4%BB %B6%E5%AE%9A%E7%BE%A9/02_%E3%81%B5%E3%81%92%E3%81%B5%E3%81%92%E8%A8%AD%E8 %A8%88/%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92%E4%BB%95%E6%A7%98%E3%81%AB%E3 %81%A4%E3%81%84%E3%81%A6.xlsx?d=19dd17a1440c5829af4d9wsf6c6w7baag5&csf=1& e=G7HZb6
長!これは・・・
長くて困る。けっこう困る。これが色々な所に書いてあるのを想像してみて。。
メールだけじゃなく、チャットもフォーラムも社内掲示文書も全部こうなっちゃう
世界がURLで溢れ返る
機密性のある情報だとbit.lyとかを使うわけにもいかず
メーラーによっては折り返されたりしてURLが壊れるし
URLからフォルダの階層やファイル名が読み取れると嬉しいんだけど、これだとぜんぜんわからん。。
う~ん、こう書いてみたらどうだろう
hogehogeさま kanataです。 ご要望のドキュメントは以下になります。 格納先(https://example.sharepoint.com) 一般/参考資料/ほげほげプロジェクト/01_要件定義/02_ふげふげ設計/ほげほげ仕様について.xlsx
うん、まぁこれなら・・・と思ったんだけれど、このファイルパスをSharePointから取得できないので手作業で打つしかない。しんどい無理。
SharePointのURLを短く(読みやすくする)する工夫¶
結局、これで多少良くなる
URLエンコードを元の日本語(UTF-8)に戻す( 日本語に戻しても最近のブラウザは、このURLをよしなに解釈してくれます たいていのユースケースでは問題にならないハズ )
URLの?以降は削除できる(ちょっと短くできる)
これをシェル芸でやってみます
$ URL='https://example.sharepoint.com/teams/xxxxxxxxxx/Share%20Document/General/%E5%8F%82%E8%80%83%E8%B3%87%E6%96%99/%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92%E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/01_%E8%A6%81%E4%BB%B6%E5%AE%9A%E7%BE%A9/02_%E3%81%B5%E3%81%92%E3%81%B5%E3%81%92%E8%A8%AD%E8%A8%88/%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92%E4%BB%95%E6%A7%98%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6.xlsx?d=19dd17a1440c5829af4d9wsf6c6w7baag5&csf=1&e=G7HZb6' $ printf '%b\n' "${URL//%/\\x}"|cut -d'?' -f 1 https://example.sharepoint.com/teams/xxxxxxxxxx/Share Document/General/参考資料/ほげほげプロジェクト/01_要件定義/02_ふげふげ設計/ほげほげ仕様について.xlsx
ふんふん、だいぶ読みやすくなりました。
こんな感じにするとパンくずリストっぽいのも作れますね
$ printf '%b\n' "${URL//%/\\x}"|cut -d'?' -f 1|cut -d'/' -f 7-|sed 's|/| > |g' General > 参考資料 > ほげほげプロジェクト > 01_要件定義 > 02_ふげふげ設計 > ほげほげ仕様について.xlsx
という訳でツールを作った¶
GetSharePointPATH.sh
#!/bin/bash # 引数チェック if [ -z "$1" ] then echo "引数にURLが必要です" exit 1 fi # URLデコードして出力 echo printf '%b\n' "${1//%/\\x}"|cut -d'?' -f 1 # パンくずリスト生成 # cut -d'/' -f 7- の7の所は環境によって数字を増減させて調整してみて echo printf '%b\n' "${1//%/\\x}"|cut -d'?' -f 1|cut -d'/' -f 7-|sed 's|/| > |g' exit 0
試す
$ ./GetSharePointPATH.sh 'https://example.sharepoint.com/teams/xxxxxxxxxx/Share%20Document/General/%E5%8F%82%E8%80%83%E8%B3%87%E6%96%99/%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92%E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88/01_%E8%A6%81%E4%BB%B6%E5%AE%9A%E7%BE%A9/02_%E3%81%B5%E3%81%92%E3%81%B5%E3%81%92%E8%A8%AD%E8%A8%88/%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92%E4%BB%95%E6%A7%98%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6.xlsx?d=19dd17a1440c5829af4d9wsf6c6w7baag5&csf=1&e=G7HZb6' https://example.sharepoint.com/teams/xxxxxxxxxx/Share Document/General/参考資料/ほげほげプロジェクト/01_要件定義/02_ふげふげ設計/ほげほげ仕様について.xlsx General > 参考資料 > ほげほげプロジェクト > 01_要件定義 > 02_ふげふげ設計 > ほげほげ仕様について.xlsx
この出力結果をメールにコピペすればいいようになりました!
このツールを添付しておきます
Microsoftさんが短縮URL機能を作ってくれるまでこれでしのごっと
コメント
kanata が2年以上前に追加
SharePointのファイル直リンクから格納先フォルダのPATHを調べる¶
SharePointでドキュメントをファイル直リンクを共有された時「いや、これどこに格納されているか知りたいねん。。」となる時があります。
しかもこれ、リンククリックするとアプリで開きたくてもブラウザで開いちゃうことが多いんですよね。もお!
ですが、この技を使うとどこに格納されているか解るんです!超便利!