Admin SetUp

[Node]NodeJSアップデート 上書きインストール(PKG利用)

Node.js.scpt

AppleScript サンプルコード

【スクリプトエディタで開く】 |

AppleScript サンプルソース(参考)
行番号ソース
001#!/usr/bin/env osascript
002----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
003#com.cocolog-nifty.quicktimer.icefloe
004#NODEJSアップデートインストール pkgを使います
005----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
006use AppleScript version "2.8"
007use framework "Foundation"
008use framework "AppKit"
009use scripting additions
010
011property refMe : a reference to current application
012set appFileManager to refMe's NSFileManager's defaultManager()
013
014###URL(どれでも好きなので)
015set strURL to "https://nodejs.org/dist/latest/" as text
016set strURL to "https://nodejs.org/dist/latest-v23.x/" as text
017set strURL to "https://nodejs.org/dist/latest-v22.x/" as text
018#
019set ocidURLString to refMe's NSString's stringWithString:(strURL)
020set ocidURL to refMe's NSURL's alloc()'s initWithString:(ocidURLString)
021##NSDATA
022set ocidOption to (refMe's NSDataReadingMappedIfSafe)
023set listResponse to refMe's NSData's alloc()'s initWithContentsOfURL:(ocidURL) options:(ocidOption) |error| :(reference)
024if (item 2 of listResponse) = (missing value) then
025  log "initWithContentsOfURL 正常処理"
026  set ocidReadData to (item 1 of listResponse)
027else if (item 2 of listResponse) (missing value) then
028  set strErrorNO to (item 2 of listResponse)'s code() as text
029  set strErrorMes to (item 2 of listResponse)'s localizedDescription() as text
030  refMe's NSLog("■:" & strErrorNO & strErrorMes)
031  return "initWithContentsOfURL エラーしました" & strErrorNO & strErrorMes
032end if
033##XML
034set ocidOption to (refMe's NSXMLNodePreserveAll) + (refMe's NSXMLDocumentTidyHTML)
035set listResponse to refMe's NSXMLDocument's alloc()'s initWithData:(ocidReadData) options:(ocidOption) |error| :(reference)
036if (item 2 of listResponse) = (missing value) then
037  log "正常処理"
038  set ocidXMLDoc to (item 1 of listResponse)
039else if (item 2 of listResponse) (missing value) then
040  log (item 2 of listResponse)'s code() as text
041  log (item 2 of listResponse)'s localizedDescription() as text
042  log "NSXMLDocumentエラー 警告がありました"
043  set ocidXMLDoc to (item 1 of listResponse)
044end if
045#NODE
046set listResponse to (ocidXMLDoc's nodesForXPath:("//*[@href[contains(., 'pkg')]]/attribute::href") |error| :(reference))
047set ocidPkgSubPathXML to (item 1 of listResponse)'s firstObject()
048set ocidPkgSubPathString to ocidPkgSubPathXML's stringValue()
049#
050set strBaseURL to "https://nodejs.org" as text
051set ocidBaseURLString to refMe's NSString's stringWithString:(strBaseURL)
052set ocidBaseURL to refMe's NSURL's alloc()'s initWithString:(ocidBaseURLString)
053set ocidPkgURL to ocidBaseURL's URLByAppendingPathComponent:(ocidPkgSubPathString)
054#パッケージのURL
055log ocidPkgURL's absoluteString() as text
056#パッケージのファイル名
057set ocidPkgFileName to ocidPkgURL's lastPathComponent()
058#PKGのバージョン
059set ocidBasePkgFileName to ocidPkgFileName's stringByDeletingPathExtension()'s stringValue()
060set ocidBasePkgFileName to ocidBasePkgFileName's mutableCopy()
061set ocidPkgVer to (ocidBasePkgFileName's stringByReplacingOccurrencesOfString:("node-") withString:(""))
062
063################################################
064###### インストール済みのパージョン
065################################################
066set strShellPath to doZshShellScript("/bin/echo $PATH:/usr/local/bin:/opt/homebrew/bin/")
067set strNodePath to doZshShellScript("PATH=$PATH:" & strShellPath & ";/usr/bin/which node")
068set strNodeVer to doZshShellScript("\"" & strNodePath & "\" -v")
069
070if (ocidPkgVer as text) is (strNodeVer as text) then
071  display alert "最新版を利用中です"
072  return "最新版を利用中です"
073end if
074
075################################################
076###### ダウンロードからインストールまで
077################################################
078set ocidTempDirURL to appFileManager's temporaryDirectory()
079set ocidUUID to refMe's NSUUID's alloc()'s init()
080set ocidUUIDString to ocidUUID's UUIDString
081set ocidSaveDirPathURL to ocidTempDirURL's URLByAppendingPathComponent:(ocidUUIDString) isDirectory:(true)
082#
083set ocidAttrDict to refMe's NSMutableDictionary's alloc()'s init()
084ocidAttrDict's setValue:(511) forKey:(refMe's NSFilePosixPermissions)
085set listDone to appFileManager's createDirectoryAtURL:(ocidSaveDirPathURL) withIntermediateDirectories:(true) attributes:(ocidAttrDict) |error| :(reference)
086set ocidSaveFilePathURL to ocidSaveDirPathURL's URLByAppendingPathComponent:(ocidPkgFileName) isDirectory:(false)
087##NSDATA
088set ocidOption to (refMe's NSDataReadingMappedIfSafe)
089set listResponse to refMe's NSData's alloc()'s initWithContentsOfURL:(ocidPkgURL) options:(ocidOption) |error| :(reference)
090if (item 2 of listResponse) = (missing value) then
091  log "initWithContentsOfURL 正常処理"
092  set ocidPkgData to (item 1 of listResponse)
093else if (item 2 of listResponse) (missing value) then
094  set strErrorNO to (item 2 of listResponse)'s code() as text
095  set strErrorMes to (item 2 of listResponse)'s localizedDescription() as text
096  refMe's NSLog("■:" & strErrorNO & strErrorMes)
097  return "initWithContentsOfURL エラーしました" & strErrorNO & strErrorMes
098end if
099##NSDATA
100set ocidOption to (refMe's NSDataWritingAtomic)
101set listDone to ocidPkgData's writeToURL:(ocidSaveFilePathURL) options:(ocidOption) |error| :(reference)
102if (item 1 of listDone) is true then
103  log "writeToURL 正常処理"
104else if (item 2 of listDone) (missing value) then
105  set strErrorNO to (item 2 of listDone)'s code() as text
106  set strErrorMes to (item 2 of listDone)'s localizedDescription() as text
107  refMe's NSLog("■:" & strErrorNO & strErrorMes)
108  return "writeToURL エラーしました" & strErrorNO & strErrorMes
109end if
110#
111set strPkgFilePath to ocidSaveFilePathURL's |path|() as text
112log doZshShellScriptSudo("/usr/sbin/installer -pkg \"" & strPkgFilePath & "\" -target / -dumplog -allowUntrusted -lang ja")
113
114return
115##########################
116# 【非ログイン】ZSH 実行
117to doZshShellScript(argCommandText)
118  set strCommandText to argCommandText as text
119  log "コマンド開始\r" & strCommandText & "\r"
120  set strExec to ("/bin/zsh -c '" & strCommandText & "'") as text
121  ##########
122  #コマンド実行
123  try
124    set strResnponse to (do shell script strExec) as text
125    log "コマンド終了"
126  on error
127    return false
128  end try
129  return strResnponse
130end doZshShellScript
131
132
133
134##########################
135# 【sudo】ZSH 実行
136to doZshShellScriptSudo(argCommandText)
137  set strCommandText to argCommandText as text
138  log "コマンド開始\r" & strCommandText & "\r"
139  set strExec to ("/bin/zsh -l -c '/usr/bin/sudo " & strCommandText & "'") as text
140  ##########
141  #コマンド実行
142  try
143    set strResnponse to (do shell script strExec) as text
144    log "コマンド終了"
145  on error
146    return false
147  end try
148  return strResnponse
149end doZshShellScriptSudo
150
AppleScriptで生成しました

|

[filezilla]FTPのホスト情報を設定に追加する

サンプルはAdobeのFTPサイト(まだ落とさずにあるのありがたい) 202502050457181_2020x996
filezillaの設定にホストを追加.scpt

AppleScript サンプルコード

【スクリプトエディタで開く】 |

AppleScript サンプルソース(参考)
行番号ソース
001#!/usr/bin/env osascript
002----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
003#com.cocolog-nifty.quicktimer.icefloe
004#バンドルIDのアプリケーションをリスタート
005#起動していない場合は起動
006----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
007use AppleScript version "2.8"
008use framework "Foundation"
009use framework "AppKit"
010use framework "UniformTypeIdentifiers"
011use scripting additions
012property refMe : a reference to current application
013set appFileManager to refMe's NSFileManager's defaultManager()
014set ocidURLsArray to (appFileManager's URLsForDirectory:(refMe's NSDownloadsDirectory) inDomains:(refMe's NSUserDomainMask))
015set ocidDownloadsDirPathURL to ocidURLsArray's firstObject()
016set strSetDirPath to ocidDownloadsDirPathURL's |path|() as text
017####################
018#設定項目
019set strHost to ("ftp.adobe.com") as text
020set strName to ("AdobeFTP") as text
021set strPort to ("21") as text
022set strProtocol to ("0") as text
023set strType to ("0") as text
024set strLogontype to ("0") as text
025set strPasvMode to ("MODE_DEFAULT") as text
026set strEncodingType to ("Auto") as text
027set strBypassProxy to ("0") as text
028set strSyncBrowsing to ("0") as text
029set strDirectoryComparison to ("0") as text
030set strRemoteDir to ("1 0 3 pub 5 adobe") as text
031set strLocalDir to (strSetDirPath) as text
032
033####################
034#前処理:設定ファイルバックアップ
035set ocidURLsArray to (appFileManager's URLsForDirectory:(refMe's NSDocumentDirectory) inDomains:(refMe's NSUserDomainMask))
036set ocidDocumentDirPathURL to ocidURLsArray's firstObject()
037set strDateNo to doGetDateNo("yyyyMMdd") as text
038set strSetDirName to ("Library/filezilla/" & strDateNo & "") as text
039set ocidSaveDirPathURL to ocidDocumentDirPathURL's URLByAppendingPathComponent:(strSetDirName) isDirectory:(true)
040#
041set ocidAttrDict to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
042ocidAttrDict's setValue:(448) forKey:(refMe's NSFilePosixPermissions)
043set listBoolMakeDir to appFileManager's createDirectoryAtURL:(ocidSaveDirPathURL) withIntermediateDirectories:true attributes:(ocidAttrDict) |error| :(reference)
044#設定ファイルのパス
045set ocidHomeDirURL to appFileManager's homeDirectoryForCurrentUser()
046set ocidXMLFilePathURL to ocidHomeDirURL's URLByAppendingPathComponent:(".config/filezilla/sitemanager.xml") isDirectory:(false)
047set ocidFileName to ocidXMLFilePathURL's lastPathComponent()
048#バックアップ先
049set ocidSaveFilePathURL to ocidSaveDirPathURL's URLByAppendingPathComponent:(ocidFileName) isDirectory:(false)
050#コピー
051set ListDone to (appFileManager's copyItemAtURL:(ocidXMLFilePathURL) toURL:(ocidSaveFilePathURL) |error| :(reference))
052if (item 1 of ListDone) is true then
053  log "copyItemAtURL 正常処理"
054else if (item 2 of ListDone) (missing value) then
055  set strErrorNO to (item 2 of ListDone)'s code() as text
056  set strErrorMes to (item 2 of ListDone)'s localizedDescription() as text
057  refMe's NSLog("■:" & strErrorNO & strErrorMes)
058  log "copyItemAtURL エラーしました" & strErrorNO & strErrorMes
059end if
060
061####################
062#本処理
063##NSDATA
064set ocidOption to (refMe's NSDataReadingMappedIfSafe)
065set listResponse to refMe's NSData's alloc()'s initWithContentsOfURL:(ocidXMLFilePathURL) options:(ocidOption) |error| :(reference)
066if (item 2 of listResponse) = (missing value) then
067  log "initWithContentsOfURL 正常処理"
068  set ocidXMLdata to (item 1 of listResponse)
069else if (item 2 of listResponse) (missing value) then
070  set strErrorNO to (item 2 of listResponse)'s code() as text
071  set strErrorMes to (item 2 of listResponse)'s localizedDescription() as text
072  refMe's NSLog("■:" & strErrorNO & strErrorMes)
073  log XXXXXXXXXXX's |path|() as text
074  return "initWithContentsOfURL エラーしました" & strErrorNO & strErrorMes
075end if
076##XML
077set ocidOption to (refMe's NSXMLNodePreserveAll) + (refMe's NSXMLDocumentTidyXML)
078set listResponse to refMe's NSXMLDocument's alloc()'s initWithData:(ocidXMLdata) options:(ocidOption) |error| :(reference)
079if (item 2 of listResponse) = (missing value) then
080  log "initWithData 正常処理"
081  set ocidXMLDoc to (item 1 of listResponse)
082else if (item 2 of listResponse) (missing value) then
083  log (item 2 of listResponse)'s code() as text
084  log (item 2 of listResponse)'s localizedDescription() as text
085  log "NSXMLDocumentエラー 警告がありました"
086  set ocidXMLDoc to (item 1 of listResponse)
087end if
088#ROOTエレメント
089set ocidRootElement to ocidXMLDoc's rootElement()
090set strRootName to ocidRootElement's |name|() as text
091if strRootName is not "FileZilla3" then
092  return "XML設定ファイルのバージョン違いです"
093end if
094set listResponse to ocidRootElement's nodesForXPath:("//Servers/Server/Host") |error| :(reference)
095set ocidElementArray to (item 1 of listResponse)
096#登録したいサーバーがすでに登録済みか?を確認する
097set appPredicate to refMe's NSPredicate's predicateWithFormat:("ANY children.stringValue == 'ftp.adobe.com'")
098set ocidFilteredArray to ocidElementArray's filteredArrayUsingPredicate:(appPredicate)
099set numCntArray to ocidFilteredArray's |count|()
100if numCntArray > 0 then
101  return "すでに登録済み"
102end if
103#登録するエレメントを作成する
104set ocidSetElement to refMe's NSXMLElement's alloc()'s initWithName:("Server")
105set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("Host") stringValue:(strHost)
106ocidSetElement's addChild:(ocidAddElement)
107set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("Port") stringValue:(strPort)
108ocidSetElement's addChild:(ocidAddElement)
109set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("Protocol") stringValue:(strProtocol)
110ocidSetElement's addChild:(ocidAddElement)
111set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("Type") stringValue:(strType)
112ocidSetElement's addChild:(ocidAddElement)
113set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("Logontype") stringValue:(strLogontype)
114ocidSetElement's addChild:(ocidAddElement)
115set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("PasvMode") stringValue:(strPasvMode)
116ocidSetElement's addChild:(ocidAddElement)
117set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("EncodingType") stringValue:(strEncodingType)
118ocidSetElement's addChild:(ocidAddElement)
119set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("BypassProxy") stringValue:(strBypassProxy)
120ocidSetElement's addChild:(ocidAddElement)
121set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("Name") stringValue:(strName)
122ocidSetElement's addChild:(ocidAddElement)
123set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("SyncBrowsing") stringValue:(strSyncBrowsing)
124ocidSetElement's addChild:(ocidAddElement)
125set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("DirectoryComparison") stringValue:(strDirectoryComparison)
126ocidSetElement's addChild:(ocidAddElement)
127set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("RemoteDir") stringValue:(strRemoteDir)
128ocidSetElement's addChild:(ocidAddElement)
129set ocidAddElement to refMe's NSXMLElement's alloc()'s initWithName:("LocalDir") stringValue:(strLocalDir)
130ocidSetElement's addChild:(ocidAddElement)
131#Serversを取得して
132set ocidServerArray to (ocidRootElement's elementsForName:("Servers"))'s firstObject()
133ocidServerArray's addChild:(ocidSetElement)
134#保存
135set ocidXMLdata to ocidXMLDoc's XMLDataWithOptions:(refMe's NSXMLNodePrettyPrint)
136set ListDone to ocidXMLdata's writeToURL:(ocidXMLFilePathURL) options:(refMe's NSDataWritingAtomic) |error| :(reference)
137if (item 1 of ListDone) is true then
138  log "writeToURL 正常処理"
139else if (item 2 of ListDone) (missing value) then
140  set strErrorNO to (item 2 of ListDone)'s code() as text
141  set strErrorMes to (item 2 of ListDone)'s localizedDescription() as text
142  refMe's NSLog("■:" & strErrorNO & strErrorMes)
143  return "エラーしました" & strErrorNO & strErrorMes
144end if
145
146
147
148to doGetDateNo(argFormatStrings)
149  ####日付情報の取得
150  set ocidDate to refMe's NSDate's |date|()
151  ###日付のフォーマットを定義
152  set ocidNSDateFormatter to refMe's NSDateFormatter's alloc()'s init()
153  ocidNSDateFormatter's setLocale:(refMe's NSLocale's localeWithLocaleIdentifier:"ja_JP_POSIX")
154  ocidNSDateFormatter's setDateFormat:(argFormatStrings)
155  set ocidDateAndTime to ocidNSDateFormatter's stringFromDate:(ocidDate)
156  set strDateAndTime to ocidDateAndTime as text
157  return strDateAndTime
158end doGetDateNo
AppleScriptで生成しました

|

[filezilla]最新版ダウンロード ARM64版

最新ダウンロード.scpt

AppleScript サンプルコード

【スクリプトエディタで開く】 |

AppleScript サンプルソース(参考)
行番号ソース
001#!/usr/bin/env osascript
002----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
003#com.cocolog-nifty.quicktimer.icefloe
004(* 解凍先
005/Users/ユーザーID/Applications/Sites/FileZilla.app
006ユーザードメインにインストールします
007*)
008#
009----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
010use AppleScript version "2.8"
011use framework "Foundation"
012use framework "UniformTypeIdentifiers"
013use framework "AppKit"
014use scripting additions
015property refMe : a reference to current application
016property refNSNotFound : a reference to 9.22337203685477E+18 + 5807
017
018###アプリケーションのバンドルID
019set strBundleID to "org.filezilla-project.filezilla"
020#################################
021###
022set strGetURL to ("https://filezilla-project.org/download.php?platform=macos-arm64") as text
023set strGetURLStr to refMe's NSString's stringWithString:(strGetURL)
024set ocidGetURL to refMe's NSURL's URLWithString:(strGetURLStr)
025###
026set ocidEncode to (refMe's NSUTF8StringEncoding)
027#set ocidHTML to refMe's NSString's alloc()'s initWithContentsOfURL:(ocidGetURL) usedEncoding:(ocidEncode) |error| :(missing value)
028set listHTML to refMe's NSString's alloc()'s initWithContentsOfURL:(ocidGetURL) usedEncoding:(ocidEncode) |error| :(reference)
029set ocidHTML to (item 1 of listHTML)
030
031###
032set ocidCharSet to refMe's NSCharacterSet's newlineCharacterSet()
033set ocidSeparateArray to (ocidHTML's componentsSeparatedByCharactersInSet:(ocidCharSet))
034repeat with itemSeparateArray in ocidSeparateArray
035  if (itemSeparateArray as text) contains "quickdownloadbuttonlink" then
036    set strAtag to itemSeparateArray as text
037    exit repeat
038  end if
039end repeat
040###
041
042###タグの分解
043set AppleScript's text item delimiters to "href=\""
044set listAtag to every text item of strAtag
045set AppleScript's text item delimiters to ""
046###↑さらに分解
047set strTagItem to (item 2 of listAtag) as text
048set AppleScript's text item delimiters to "\""
049set listTagItem to every text item of strTagItem
050set AppleScript's text item delimiters to ""
051###URLゲット
052set strLinkURL to (item 1 of listTagItem) as text
053
054log strLinkURL
055set ocidLinkURLStr to refMe's NSString's stringWithString:(strLinkURL)
056set ocidLinkURL to refMe's NSURL's URLWithString:(ocidLinkURLStr)
057set ocidFileName to ocidLinkURL's lastPathComponent()
058
059#################################
060###ダウンロード
061set ocidOprion to (refMe's NSDataReadingMappedIfSafe)
062set listFileData to refMe's NSData's dataWithContentsOfURL:(ocidLinkURL) options:(ocidOprion) |error| :(reference)
063set ocidFileData to (item 1 of listFileData)
064###保存先(起動時に削除されるフォルダ)
065set appFileManager to refMe's NSFileManager's defaultManager()
066set ocidTempDirURL to appFileManager's temporaryDirectory()
067set ocidUUID to refMe's NSUUID's alloc()'s init()
068set ocidUUIDString to ocidUUID's UUIDString
069set ocidSaveDirPathURL to ocidTempDirURL's URLByAppendingPathComponent:(ocidUUIDString) isDirectory:true
070###
071set ocidAttrDict to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
072# 777-->511 755-->493 700-->448 766-->502
073ocidAttrDict's setValue:(511) forKey:(refMe's NSFilePosixPermissions)
074set listBoolMakeDir to appFileManager's createDirectoryAtURL:(ocidSaveDirPathURL) withIntermediateDirectories:true attributes:(ocidAttrDict) |error| :(reference)
075
076###保存パス
077set ocidSaveFilePathURL to ocidSaveDirPathURL's URLByAppendingPathComponent:(ocidFileName) isDirectory:false
078set strGz2FilePath to ocidSaveFilePathURL's |path|() as text
079###保存
080set ocidOprion to (refMe's NSDataWritingAtomic)
081set listDone to ocidFileData's writeToURL:(ocidSaveFilePathURL) options:(ocidOprion) |error| :(reference)
082#################################
083###解凍先
084set ocidURLsArray to (appFileManager's URLsForDirectory:(refMe's NSApplicationDirectory) inDomains:(refMe's NSUserDomainMask))
085set ocidApplicationDirURL to ocidURLsArray's firstObject()
086set ocidSaveAppDirPathURL to ocidApplicationDirURL's URLByAppendingPathComponent:("Sites") isDirectory:true
087set ocidSaveAppDirPath to ocidSaveAppDirPathURL's |path|()
088###
089set ocidAttrDict to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
090# 777-->511 755-->493 700-->448 766-->502
091ocidAttrDict's setValue:(448) forKey:(refMe's NSFilePosixPermissions)
092set listBoolMakeDir to appFileManager's createDirectoryAtURL:(ocidSaveAppDirPathURL) withIntermediateDirectories:true attributes:(ocidAttrDict) |error| :(reference)
093###
094set ocidSaveAppPathURL to ocidSaveAppDirPathURL's URLByAppendingPathComponent:("FileZilla.app") isDirectory:false
095set ocidSaveAppPath to ocidSaveAppPathURL's |path|()
096set boolExist to appFileManager's fileExistsAtPath:(ocidSaveAppPath)
097if boolExist is true then
098  set listDone to (appFileManager's trashItemAtURL:(ocidSaveAppPathURL) resultingItemURL:(missing value) |error| :(reference))
099end if
100#################################
101###解凍
102set strCommandText to ("/usr/bin/bsdtar -xvjf \"" & strGz2FilePath & "\" -C \"" & (ocidSaveAppDirPath as text) & "\"") as text
103
104set strResponse to ""
105try
106  set strResponse to (do shell script strCommandText)
107on error strErrorMes
108  set aliasPathToMe to path to me as alias
109  set strPathToMe to (POSIX path of aliasPathToMe) as text
110  set strErrorMes to (strPathToMe & "\r" & strResponse & "\r" & strErrorMes & "\r") as text
111  
112  #####ダイアログを前面に
113  set strAppName to (name of current application) as text
114  ####スクリプトメニューから実行したら
115  if strAppName is "osascript" then
116    tell application "Finder" to activate
117  else
118    tell current application to activate
119  end if
120  set aliasIconPath to POSIX file "/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/AlertStopIcon.icns" as alias
121  set recordResult to (display dialog "一部エラーが発生しました\r確認してください" with title "エラーメッセージ" default answer strErrorMes buttons {"担当者にメールで送信", "キャンセル", "クリップボードにコピー"} default button "担当者にメールで送信" cancel button "キャンセル" with icon aliasIconPath giving up after 20 without hidden answer) as record
122  
123  if button returned of recordResult is "担当者にメールで送信" then
124    set strURL to ("mailto:?Body=" & strErrorMes & "&subject=【エラー報告】エラーが発生しました")
125    tell application "Finder"
126      open location strURL
127    end tell
128  end if
129  if button returned of recordResult is "クリップボードにコピー" then
130    try
131      set strText to text returned of recordResult as text
132      ####ペーストボード宣言
133      set appPasteboard to refMe's NSPasteboard's generalPasteboard()
134      set ocidText to (refMe's NSString's stringWithString:(strText))
135      appPasteboard's clearContents()
136      appPasteboard's setString:(ocidText) forType:(refMe's NSPasteboardTypeString)
137    on error
138      tell application "Finder"
139        set the clipboard to strText as text
140      end tell
141    end try
142  end if
143end try
144
145#################################
146###
147set appSharedWorkspace to refMe's NSWorkspace's sharedWorkspace()
148set boolSelectFileResults to appSharedWorkspace's selectFile:(ocidSaveAppPath) inFileViewerRootedAtPath:(ocidSaveAppDirPath)
AppleScriptで生成しました

|

[Node.js]セットアップ

【1】パッケージダウンロード
【2】シェルのexport
【3】動作確認

【1】パッケージダウンロード
https://nodejs.org/ja/download
202501220917401_855x680


【2】シェルのexport
[Node]npm "node: No such file or directory"発生時の対応 BASH版
https://quicktimer.cocolog-nifty.com/icefloe/2025/01/post-8a6ea2.html

[Node]npm "node: No such file or directory"発生時の対応 AS版
https://quicktimer.cocolog-nifty.com/icefloe/2025/01/post-293452.html

RCファイル記述例
/usr/local/binにパスが通っていればOK
サンプルコード

サンプルソース(参考)
行番号ソース
001export PATH=/usr/bin:/bin:/usr/sbin:/sbin
002export PATH=/usr/local/bin:$PATH
AppleScriptで生成しました


【3】動作確認
サンプルコード

サンプルソース(参考)
行番号ソース
001zsh $ node
002Welcome to Node.js v22.13.0.
003Type ".help" for more information.
004> .help
005.break    Sometimes you get stuck, this gets you out
006.clear    Alias for .break
007.editor   Enter editor mode
008.exit     Exit the REPL
009.help     Print this help message
010.load     Load JS from a file into the REPL session
011.save     Save all evaluated commands in this REPL session to a file
012
013Press Ctrl+C to abort current expression, Ctrl+D to exit the REPL
014> .exit
015zsh $
AppleScriptで生成しました

|

[Node]npm "node: No such file or directory"発生時の対応 BASH版

nodeで配布している公式のPKG
インストール先が/usr/local/binなので
どうしても必要
/usr/binにインストールするのも考えたけど
今のmacOSはユーザーインストールは/usr/local指定なので
ルールに従うことにした

サンプルコード

サンプルソース(参考)
行番号ソース
001#!/bin/bash
002#com.cocolog-nifty.quicktimer.icefloe
003#################################################
004###管理者インストールしているか?チェック
005USER_WHOAMI=$(/usr/bin/whoami)
006/bin/echo "実行ユーザー(whoami): $USER_WHOAMI"
007###実行しているユーザー名
008CONSOLE_USER=$(/bin/echo "show State:/Users/ConsoleUser" | /usr/sbin/scutil | /usr/bin/awk '/Name :/ { print $3 }')
009/bin/echo "コンソールユーザー(scutil): $CONSOLE_USER"
010###実行しているユーザー名
011HOME_USER=$(/bin/echo "$HOME" | /usr/bin/awk -F'/' '{print $NF}')
012/bin/echo "実行ユーザー(HOME): $HOME_USER"
013###logname
014LOGIN_NAME=$(/usr/bin/logname)
015/bin/echo "ログイン名(logname): $LOGIN_NAME"
016###UID
017USER_NAME=$(/usr/bin/id -un)
018/bin/echo "ユーザー名(id): $USER_NAME"
019###STAT
020STAT_USR=$(/usr/bin/stat -f%Su /dev/console)
021/bin/echo "STAT_USR(console): $STAT_USR"
022
023########################################
024##
025/bin/echo "node用設定開始"
026PATH_BACKUP_DIR="/Users/${STAT_USR}/Documents/Apple/Backup/Shell"
027STR_DATE_NO=$(/bin/date "+%Y%m%d")
028PATH_BASH_RC="/Users/${STAT_USR}/.bashrc"
029PATH_ZSH_RC="/Users/${STAT_USR}/.zshrc"
030PATH_BASH_BACKUP="${PATH_BACKUP_DIR}/bashrc.${STR_DATE_NO}"
031PATH_ZSH_BACKUP="${PATH_BACKUP_DIR}/bashrc.${STR_DATE_NO}"
032/bin/mkdir -p "$PATH_BACKUP_DIR"
033/bin/chmod 700 "$PATH_BACKUP_DIR"
034##
035/usr/bin/ditto "$PATH_BASH_RC" "$PATH_BASH_BACKUP"
036/usr/bin/ditto "$PATH_ZSH_RC" "$PATH_ZSH_BACKUP"
037##
038/bin/chmod 600 "$PATH_BASH_RC"
039/bin/chmod 600 "$PATH_ZSH_RC"
040##
041PATH_ADD="/usr/local/bin"
042######################
043STR_PATH_LINE=$(/usr/bin/grep "^export PATH" "$PATH_ZSH_RC")
044IFS=$'\n'
045read -r -d '' -a PATH_LINES <<<"$STR_PATH_LINE"
046BOOL_CONTAIN=false
047for ITEM_LINE in "${PATH_LINES[@]}"; do
048    if [[ "$ITEM_LINE" == *"/usr/local/bin"* ]]; then
049        BOOL_CONTAIN=true
050        break
051    fi
052done
053
054if [ "$BOOL_CONTAIN" == false ];then
055    STR_ADDITION=$(printf "\n#ADD${STR_DATE_NO}\nexport PATH=/usr/local/bin:\$PATH\n")
056    STR_READ_STRING=$(/bin/cat "$PATH_ZSH_RC")
057    STR_SAVE_STRING="${STR_READ_STRING}${STR_ADDITION}"
058    /bin/echo "$STR_SAVE_STRING" > "$PATH_ZSH_RC"
059    /bin/echo "追加しました"
060fi
061
062
063######################
064STR_PATH_LINE=$(/usr/bin/grep "^export PATH" "$PATH_BASH_RC")
065IFS=$'\n'
066read -r -d '' -a PATH_LINES <<<"$STR_PATH_LINE"
067BOOL_CONTAIN=false
068for ITEM_LINE in "${PATH_LINES[@]}"; do
069    if [[ "$ITEM_LINE" == *"/usr/local/bin"* ]]; then
070        BOOL_CONTAIN=true
071        break
072    fi
073done
074
075if [ "$BOOL_CONTAIN" == false ];then
076    STR_ADDITION=$(printf "\n#ADD${STR_DATE_NO}\nexport PATH=/usr/local/bin:\$PATH\n")
077    STR_READ_STRING=$(/bin/cat "$PATH_BASH_RC")
078    STR_SAVE_STRING="${STR_READ_STRING}${STR_ADDITION}"
079    /bin/echo "$STR_SAVE_STRING" > "$PATH_BASH_RC"
080    /bin/echo "追加しました"
081fi
082
083
084##
085/bin/chmod 600 "$PATH_BASH_RC"
086/bin/chmod 600 "$PATH_ZSH_RC"
087/bin/echo "処理終了"
088exit 0
AppleScriptで生成しました

|

[Node]npm "node: No such file or directory"発生時の対応 AS版


AppleScript サンプルコード

【スクリプトエディタで開く】 |

AppleScript サンプルソース(参考)
行番号ソース
001#!/usr/bin/env osascript
002----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
003# RCファイルに/usr/local/bin行を追加する
004#RCファイルのバックアップを作成する
005#   com.cocolog-nifty.quicktimer.icefloe
006----+----1----+----2----+-----3----+----4----+----5----+----6----+----7
007use AppleScript version "2.8"
008use framework "Foundation"
009use framework "AppKit"
010use scripting additions
011property refMe : a reference to current application
012
013##############################
014#まずはバックアップ
015#元ファイルパス
016set appFileManager to refMe's NSFileManager's defaultManager()
017set ocidHomeDirURL to appFileManager's homeDirectoryForCurrentUser()
018#
019set ocidZshRcFilePathURL to ocidHomeDirURL's URLByAppendingPathComponent:(".zshrc") isDirectory:(false)
020set ocidBashRcFilePathURL to ocidHomeDirURL's URLByAppendingPathComponent:(".bashrc") isDirectory:(false)
021#バックアップ先
022# /Users/ユーザー名/書類/Apple/Backup/Shellに作成
023set ocidURLsArray to (appFileManager's URLsForDirectory:(refMe's NSDocumentDirectory) inDomains:(refMe's NSUserDomainMask))
024set ocidDocumentDirPathURL to ocidURLsArray's firstObject()
025set ocidSaveDirFilePathURL to ocidDocumentDirPathURL's URLByAppendingPathComponent:("Apple/Backup/Shell") isDirectory:(true)
026#フォルダ作っておく
027set ocidAttrDict to refMe's NSMutableDictionary's alloc()'s initWithCapacity:0
028ocidAttrDict's setValue:(448) forKey:(refMe's NSFilePosixPermissions)
029set listBoolMakeDir to appFileManager's createDirectoryAtURL:(ocidSaveDirFilePathURL) withIntermediateDirectories:true attributes:(ocidAttrDict) |error| :(reference)
030#保存先パス
031set ocidZshRcBackupPathURL to ocidSaveDirFilePathURL's URLByAppendingPathComponent:("zshrc") isDirectory:(false)
032set ocidBashRcBackupPathURL to ocidSaveDirFilePathURL's URLByAppendingPathComponent:("bashrc") isDirectory:(false)
033set strDateNO to doGetDateNo("yyyyMMdd")
034set ocidZshRcBackupPathURL to ocidZshRcBackupPathURL's URLByAppendingPathExtension:(strDateNO)
035set ocidBashRcBackupPathURL to ocidBashRcBackupPathURL's URLByAppendingPathExtension:(strDateNO)
036#バックアップ
037set listDone to (appFileManager's copyItemAtURL:(ocidBashRcFilePathURL) toURL:(ocidBashRcBackupPathURL) |error| :(reference))
038set listDone to (appFileManager's copyItemAtURL:(ocidZshRcFilePathURL) toURL:(ocidZshRcBackupPathURL) |error| :(reference))
039#処理用にArrayにしておく
040set ocidFilePathArray to refMe's NSMutableArray's alloc()'s init()
041ocidFilePathArray's addObject:(ocidBashRcFilePathURL)
042ocidFilePathArray's addObject:(ocidZshRcFilePathURL)
043##############################
044#本処理
045repeat with itemFilePathURL in ocidFilePathArray
046  
047  set listResponse to (refMe's NSMutableString's alloc()'s initWithContentsOfURL:(itemFilePathURL) encoding:(refMe's NSUTF8StringEncoding) |error| :(reference))
048  set ocidReadString to (item 1 of listResponse)
049  
050  #改行でARRAYにして
051  set ocidStringArray to (ocidReadString's componentsSeparatedByString:("\n"))
052  #現状の判定
053  set boolContain to false as boolean
054  #順番に行の内容をチェック
055  repeat with itemArray in ocidStringArray
056    #export PATH行があれば
057    set boolExport to (itemArray's hasPrefix:("export PATH"))
058    if boolExport is true then
059      #/usr/loca/binが含まれるか?をチェックする
060      set boolContain to (itemArray's containsString:("/usr/local/bin"))
061      if boolContain is true then
062        #複数行対応でTrue判定があればそこでチェックは終わり
063        exit repeat
064      end if
065    end if
066  end repeat
067  
068  #すでに設定済みなら
069  if boolContain is true then
070    log "すでに設定済み"
071    #未設定なら
072  else if boolContain is false then
073    #空行除去
074    set ocidReadString to (ocidReadString's stringByReplacingOccurrencesOfString:("\n\n") withString:("\n"))
075    #行末改行除去
076    set boolSuffix to (ocidReadString's hasSuffix:("\n")) as boolean
077    if boolSuffix is true then
078      set ocidSetLength to ocidReadString's |length|()
079      set ocidSubstring to (ocidReadString's substringToIndex:(ocidSetLength - 1))
080      set ocidSaveString to ocidSubstring's mutableCopy()
081    else
082      set ocidSaveString to ocidReadString's mutableCopy()
083    end if
084    #/usr/local/bin行を追加する
085    (ocidSaveString's appendString:("\n"))
086    (ocidSaveString's appendString:("#ADD" & strDateNO & "\n"))
087    (ocidSaveString's appendString:("export PATH=/usr/local/bin:$PATH"))
088    (ocidSaveString's appendString:("\n"))
089    #上書き保存
090    set listDone to (ocidSaveString's writeToURL:(itemFilePathURL) atomically:(true) encoding:(refMe's NSUTF8StringEncoding) |error| :(reference))
091    if (item 1 of listDone) is true then
092      log "正常終了"
093    else if (item 1 of listDone) is false then
094      log (item 2 of listDone)'s localizedDescription() as text
095      log "保存に失敗しました"
096    end if
097  end if
098  
099  
100end repeat
101
102return 0
103
104##############################
105### 今の日付日間 テキスト
106##############################
107to doGetDateNo(argDateFormat)
108  ####日付情報の取得
109  set ocidDate to current application's NSDate's |date|()
110  ###日付のフォーマットを定義
111  set ocidNSDateFormatter to current application's NSDateFormatter's alloc()'s init()
112  ocidNSDateFormatter's setLocale:(current application's NSLocale's localeWithLocaleIdentifier:"ja_JP_POSIX")
113  set ocidTimeZone to refMe's NSTimeZone's alloc()'s initWithName:"Asia/Tokyo"
114  ocidNSDateFormatter's setTimeZone:(ocidTimeZone)
115  ocidNSDateFormatter's setDateFormat:(argDateFormat)
116  set ocidDateAndTime to ocidNSDateFormatter's stringFromDate:ocidDate
117  set strDateAndTime to ocidDateAndTime as text
118  return strDateAndTime
119end doGetDateNo
AppleScriptで生成しました

|

[setup]ライブラリーの表示


サンプルコード

サンプルソース(参考)
行番号ソース
001#!/bin/bash
002#com.cocolog-nifty.quicktimer.icefloe
003#実行中のコンソールユーザーID
004STAT_USR=$(/usr/bin/stat -f%Su /dev/console)
005/bin/echo "STAT_USR(console): $STAT_USR"
006#ユーザーライブラリの表示
007/usr/bin/chflags nohidden "/Users/${STAT_USR}/Library"
008/usr/bin/SetFile -a v "/Users/${STAT_USR}/Library"
009/usr/bin/xattr -d "com.apple.FinderInfo" "/Users/${STAT_USR}/Library" > /dev/null 2>&1
010
011exit 0
AppleScriptで生成しました

|

MacOS アクセント記号等 欧文系の文字の出し方

1:キーボード>入力ソースの設定
2:キーボードビューアー
3−1:入力:入力組み合わせ
3−2:入力:キー組み合わせ



1:キーボード>入力ソースの設定

12_20241110141101

22_20241110141101

システム設定の場合は
キーボード
テキスト入力
入カソース
202411100212211_1430x940

入力ソースを追加します

32

ABCとABC拡張は入れておきましょう

422

これで基本設定はできました

52



2:キーボードビューアー

入力ソースによって
オプションキーを押下したときの
キーボードの組み合わせが変わります

ABC
202411100206231_994x9232

ABC拡張
202411100206531_1253x10632



3−1:入力:入力組み合わせ

入力ソースをABC拡張にします
202411100218131_427x131

オプションキーを押しながら
Wの位置のキーを押下すると
肌色表示の上カンマが出ます これが組み合わせになる発音記号部分です

202411100146001_1920x10802

続けてaをタイプすると
発音記号となって入力されます
Photo_20241110142101

基本はここまでですので
慣れるまでの間はキーボードビューアをスクリーンショット等に撮影して
出しておくとわかりやすいでしょう


キーボード、入力ソースによって
『コントロールキー』を押したときの組み合わせが変わります
入力したい地方の入力ソースをあらかじめ設定しておくと
入力が便利になります
ABC
Abc
ABC拡張

Photo_20241110142401

|

[macos15]ターミナル sudo でタッチIDを有効にする

こちらの記事を参考にした
Use Jamf Self Service to Enable TouchID for sudo
https://mostlymac.blog/2022/03/01/use-jamf-self-service-to-enable-touchid-for-sudo/

初期内容
authsufficientpam_tid.so
   
authincludesudo_local
authsufficientpam_smartcard.so
authrequiredpam_opendirectory.so
accountrequiredam_permit.so
passwordrequiredpam_deny.so
sessionrequiredpam_permit.so
macOS15時点

サンプルコード

サンプルソース(参考)
行番号ソース
001#!/bin/bash
002#com.cocolog-nifty.quicktimer.icefloe
003#
004#参考
005# https://mostlymac.blog/
006#################################################
007###管理者インストールしているか?チェック
008USER_WHOAMI=$(/usr/bin/whoami)
009/bin/echo "実行したユーザーは:$USER_WHOAMI"
010if [ "$USER_WHOAMI" != "root" ]; then
011  /bin/echo "このスクリプトを実行するには管理者権限が必要です。"
012  /bin/echo "sudo で実行してください"
013  ### path to me
014  SCRIPT_PATH="${BASH_SOURCE[0]}"
015  /bin/echo "/usr/bin/sudo \"$SCRIPT_PATH\""
016  /bin/echo "↑を実行してください"
017  exit 1
018else
019  ###実行しているユーザー名
020  CURRENT_USER=$(/bin/echo "$HOME" | /usr/bin/awk -F'/' '{print $NF}')
021  /bin/echo "実行ユーザー:" "$CURRENT_USER"
022  ###STAT
023  STAT_USR=$(/usr/bin/stat -f%Su /dev/console)
024  /bin/echo "STAT_USR(console): $STAT_USR"
025  ###UID
026  USER_ID=$(/usr/bin/id -u "$STAT_USR")
027  /bin/echo "UID: " "$USER_ID"
028fi
029###コンソールユーザー CONSOLE_USERはFinderでログインしていないと出ない
030CONSOLE_USER=$(/bin/echo "show State:/Users/ConsoleUser" | /usr/sbin/scutil | /usr/bin/awk '/Name :/ { print $3 }')
031if [ -z "$CONSOLE_USER" ]; then
032  /bin/echo "コンソールユーザーが無い=電源入れてログインウィンドウ状態"
033else
034  /bin/echo "コンソールユーザー:" "$CONSOLE_USER"
035fi
036########################################
037#
038#日付
039STR_DATE=$(/bin/date +"%Y%m%d")
040#バックアップ用のパス
041STR_BACKUP_PATH="/etc/pam.d/sudo.${STR_DATE}"
042#バックアップ
043/usr/bin/sudo /usr/bin/ditto "/etc/pam.d/sudo" "$STR_BACKUP_PATH"
044#pam_tid行が無い場合は
045if ! grep -q "pam_tid.so" "/etc/pam.d/sudo"; then
046  #pam_tid行を追加する
047  /bin/echo "auth       sufficient     pam_tid.so" | /usr/bin/sudo /usr/bin/tee -a "/etc/pam.d/sudo" >/dev/null
048fi
049########################################
050#
051STR_RESPONSE=$(/usr/bin/sudo /usr/bin/bioutil -s -c | grep "$USER_ID" | /usr/bin/wc -l)
052/bin/echo "Bioutil Used: " "$STR_RESPONSE"
053if [ "$STR_RESPONSE" -ge 1 ]; then
054  /bin/echo "タッチID利用中"
055else
056  /bin/echo "タッチID未設定"
057fi
058exit 0
AppleScriptで生成しました

|

[macOS15]spctlによるGatekeeperの設定ができなくなる

デベロッパーIDの取得等他の機能は利用可能です
Gatekeeperの設定変更はUI使う必要が出たって事かな

サンプルコード

サンプルソース(参考)
行番号ソース
001sh-3.2$ 
002sh-3.2$ 
003sh-3.2$ /usr/bin/sudo /usr/sbin/spctl --disable-status
004The option to globally disable the assessment system is currently available in System Settings.
005sh-3.2$ /usr/bin/sudo /usr/sbin/spctl --enable
006This operation is no longer supported. Please see the man page for more information.
007sh-3.2$ /usr/bin/sudo /usr/sbin/spctl --master-enable
008This operation is no longer supported. Please see the man page for more information.
009sh-3.2$ /usr/bin/sudo /usr/sbin/spctl --global-enable
010This operation is no longer supported. Please see the man page for more information.
011sh-3.2$ /usr/bin/sudo /usr/sbin/spctl --global-disable
012Globally disabling the assessment system needs to be confirmed in System Settings.
013sh-3.2$ /usr/bin/sudo /usr/sbin/spctl --master-disable
014Globally disabling the assessment system needs to be confirmed in System Settings.
015sh-3.2$ 
AppleScriptで生成しました

私はGatekeeperは原則ONにする派です
自分だけならGatekeeperOFFでも良いのですが
仕事でも私事でも『相手』に対しての責任としてのセキュリティ対策です

セキュリティ対策している人

セキュリティ対策をしない人

私は、セキュリティ対策をしない人との仕事はイヤな思いしか、した事ない
甘くみているってのもあるとは思うけど
対策しない人は、万事において『そうゆう傾向』が強い人が多い
(もちろん、全員が!と言うつもりはない、そこは人それぞれだから)

その上でGatekeeperをOFFにするなら
電源OFFから電源ON時に電源ボタン長押しで
起動オプションからターミナルで処理することになります
spctl 設定変更
Macをシャットダウン
電源オン時に 電源ボタンを長押しして、起動オプション(Startup Options) に入る
「オプション」を選び、macOS復旧(Recovery)モードへ
「ユーティリティ」>「ターミナル」を開く
以下のコマンド
/usr/sbin/spctl --master-disableを実行


master-disable.bash

サンプルコード

サンプルソース(参考)
行番号ソース
001#!/bin/bash
002#com.cocolog-nifty.quicktimer.icefloe
003#set -x
004#export PATH=/usr/bin:/bin:/usr/sbin:/sbin
005#################################################
006
007#電源ONボタンの長押しから-->起動オプション画面で
008#ターミナルを起動してから
009
010/usr/sbin/spctl --master-disable
011
012
013
014exit 0
AppleScriptで生成しました
オプション起動用.bash

サンプルコード

サンプルソース(参考)
行番号ソース
001#!/bin/bash
002#com.cocolog-nifty.quicktimer.icefloe
003#set -x
004#export PATH=/usr/bin:/bin:/usr/sbin:/sbin
005#################################################
006#電源ONボタンの長押しから-->起動オプション画面で
007#ターミナルを起動してから
008
009#ファイルシステムの保護を無効化した後で
010csrutil enable --without fs
011#設定を変更して
012spctl --master-disable
013#戻す
014csrutil enable
015
016exit 0
017
018#csrutil 現在の設定の確認
019/usr/bin/csrutil status
020#SIP をデフォルト設定(=完全に有効)に戻します。
021/usr/bin/csrutil clear
022
023
024#SIP 全体を無効化。
025/usr/bin/csrutil disable
026#デバッグ権限は有効化しない
027/usr/bin/csrutil disable --no-internal
028#kext の署名検証のみ無効化
029/usr/bin/csrutil disable --without kext
030#ファイルシステム領域への書き込みを許可。
031/usr/bin/csrutil disable --without fs
032#カーネルデバッガへのアクセス
033/usr/bin/csrutil disable --without debug
034#動的トレースツールの制限を解除
035/usr/bin/csrutil disable --without dtrace
036#NVRAM 書き換えの制限を解除
037/usr/bin/csrutil disable --without nvram
038
039#組み合わせ
040/usr/bin/csrutil disable --without kext  --without nvram
041
042#disableした後で部分的に有効にする手順
043/usr/bin/csrutil disable
044/usr/bin/csrutil enable --no-internal
045/usr/bin/csrutil enable --without kext
046/usr/bin/csrutil enable --without fs
047/usr/bin/csrutil enable --without debug
048/usr/bin/csrutil enable --without dtrace
049/usr/bin/csrutil enable --without nvram
050
051
052#組み合わせ
053/usr/bin/csrutil enable --without kext --without debug
054
055
056
057
058CSRUTIL(8)              System Manager's Manual             CSRUTIL(8)
059
060NAME
061     csrutil – Configure system security policies
062
063SYNOPSIS
064     csrutil command [arguments ...]
065
066DESCRIPTION
067     csrutil modifies System Integrity Protection settings.  Some of
068     the commands require the device to be booted into the Recovery
069     OS.  Invoke csrutil with no arguments to see a full usage
070     statement.
071
072macOS                        June 15, 2017                       macOS
073
074
075csrutil: invalid command -h
076usage: csrutil <command>
077Modify the System Integrity Protection configuration.
078Available commands:
079
080    clear
081        Clear the existing configuration.
082    disable
083        Disable the protection of the OS installation. Only available in Recovery OS.
084    enable
085        Enable the protection of the OS installation. Only available in Recovery OS.
086    status
087        In Recovery OS, displays the configuration for each OS installation.
088        In macOS, displays the configuration of the running OS.
089
090    allow-research-guests
091        status
092            Show the current allow research guests setting.
093        disable
094            Disallow research guests. Only available in Recovery OS.
095        enable
096            Allow research guests. Only available in Recovery OS.
097
098    authenticated-root
099        status
100            Show the current authenticated root setting.
101        disable
102            Allow booting from non-sealed system snapshots. Only available in Recovery OS.
103        enable
104            Only allow booting from sealed system snapshots. Only available in Recovery OS.
AppleScriptで生成しました

|

その他のカテゴリー

Accessibility Acrobat Acrobat 2020 Acrobat 2024 Acrobat AddOn Acrobat Annotation Acrobat AppleScript Acrobat ARMDC Acrobat AV2 Acrobat BookMark Acrobat Classic Acrobat DC Acrobat Dialog Acrobat Distiller Acrobat Form Acrobat GentechAI Acrobat JS Acrobat JS Word Search Acrobat Maintenance Acrobat Manifest Acrobat Menu Acrobat Merge Acrobat Open Acrobat PDFPage Acrobat Plugin Acrobat Preferences Acrobat Preflight Acrobat Print Acrobat Python Acrobat Reader Acrobat Reader Localized Acrobat Reference Acrobat Registered Products Acrobat SCA Acrobat SCA Updater Acrobat Sequ Acrobat Sign Acrobat Stamps Acrobat URL List Mac Acrobat URL List Windows Acrobat Watermark Acrobat Windows Acrobat Windows Reader Admin Admin Account Admin Apachectl Admin ConfigCode Admin configCode Admin Device Management Admin LaunchServices Admin Locationd Admin loginitem Admin Maintenance Admin Mobileconfig Admin NetWork Admin Permission Admin Pkg Admin Power Management Admin Printer Admin Printer Basic Admin Printer Custompapers Admin SetUp Admin SMB Admin softwareupdate Admin Support Admin System Information Admin TCC Admin Tools Admin Umask Admin Users Admin Volumes Admin XProtect Adobe Adobe AUSST Adobe Bridge Adobe Documents Adobe FDKO Adobe Fonts Adobe Reference Adobe RemoteUpdateManager Adobe Sap Code AppKit Apple AppleScript AppleScript Duplicate AppleScript entire contents AppleScript List AppleScript ObjC AppleScript Osax AppleScript PDF AppleScript Pictures AppleScript record AppleScript Video Applications AppStore Archive Archive Keka Attributes Automator BackUp Barcode Barcode Decode Barcode QR Bash Basic Basic Path Bluetooth BOX Browser Calendar CD/DVD Choose Chrome Chromedriver CIImage CityCode CloudStorage Color Color NSColor Color NSColorList com.apple.LaunchServices.OpenWith Console Contacts CotEditor CURL current application Date&Time delimiters Desktop Desktop Position Device Diff Disk do shell script Dock Dock Launchpad DropBox Droplet eMail Encode % Encode Decode Encode HTML Entity Encode UTF8 Error EXIFData exiftool ffmpeg File File Name Finder Finder Window Firefox Folder FolderAction Font List FontCollections Fonts Fonts Asset_Font Fonts ATS Fonts Emoji Fonts Maintenance Fonts Morisawa Fonts Python Fonts Variable Foxit GIF github Guide HTML Icon Icon Assets.car Illustrator Image Events ImageOptim Input Dictionary iPhone iWork Javascript Jedit Ω Json Label Language Link locationd lsappinfo m3u8 Mail Map Math Media Media AVAsset Media AVconvert Media AVFoundation Media AVURLAsset Media Movie Media Music Memo Messages Microsoft Microsoft Edge Microsoft Excel Microsoft Fonts Microsoft Office Microsoft Office Link Microsoft OneDrive Microsoft Teams Mouse Music Node Notes NSArray NSArray Sort NSAttributedString NSBezierPath NSBitmapImageRep NSBundle NSCFBoolean NSCharacterSet NSData NSDecimalNumber NSDictionary NSError NSEvent NSFileAttributes NSFileManager NSFileManager enumeratorAtURL NSFont NSFontManager NSGraphicsContext NSGraphicsContext Crop NSImage NSIndex NSKeyedArchiver NSKeyedUnarchiver NSLocale NSMetadataItem NSMutableArray NSMutableDictionary NSMutableString NSNotFound NSNumber NSOpenPanel NSPasteboard NSpoint NSPredicate NSRange NSRect NSRegularExpression NSRunningApplication NSScreen NSSet NSSize NSString NSString stringByApplyingTransform NSStringCompareOptions NSTask NSTimeZone NSUbiquitous NSURL NSURL File NSURLBookmark NSURLComponents NSURLResourceKey NSURLSession NSUserDefaults NSUUID NSView NSWorkspace Numbers OAuth PDF PDF Image2PDF PDF MakePDF PDF nUP PDF Pymupdf PDF Pypdf PDFContext PDFDisplayBox PDFImageRep PDFKit PDFKit Annotation PDFKit AnnotationWidget PDFKit DocumentPermissions PDFKit OCR PDFKit Outline PDFKit Start PDFPage PDFPage Rotation PDFView perl Photoshop PlistBuddy pluginkit plutil postalcode PostScript PowerShell prefPane Preview Python Python eyed3 Python pip QuickLook QuickTime ReadMe Regular Expression Reminders ReName Repeat RTF Safari SaveFile ScreenCapture ScreenSaver Script Editor Script Menu SF Symbols character id SF Symbols Entity Shortcuts Shortcuts Events sips Skype Slack Sound Spotlight sqlite StandardAdditions StationSearch Subtitles LRC Subtitles SRT Subtitles VTT Swift swiftDialog System Events System Settings TemporaryItems Terminal Text Text CSV Text MD Text TSV TextEdit Tools Translate Trash Twitter Typography UI Unit Conversion UTType valueForKeyPath Video VisionKit Visual Studio Code VMware Fusion Wacom Weather webarchive webp Wifi Windows XML XML EPUB XML HTML XML LSSharedFileList XML LSSharedFileList sfl2 XML LSSharedFileList sfl3 XML objectsForXQuery XML OPML XML Plist XML Plist System Events XML RSS XML savedSearch XML SVG XML TTML XML webloc XML xmllint XML XMP YouTube Zero Padding zoom