swift 스 크 립 트
#!/usr/bin/env swift
으로 시작 하여 스 크 립 트 의 해석 프로그램 을 지정 해 야 합 니 다.물론 스 크 립 트 를 실행 할 때 해석 기 를 지정 하면 머리 에 해당 하 는 해석 기 를 추가 하지 않 아 도 됩 니 다.(env 지정 해석 기 사용)셸 내장 swift
swift 의 강력 한 기능 과 유연성 으로 인해 셸 스 크 립 트 에서 swift 코드 를 직접 실행 할 수 있 습 니 다. 혼합 쓰 려 면 머리 에 swift 해석 기 를 추가 하 십시오.
test. sh 파일 을 만 들 고 아래 코드 를 입력 하 십시오. 이 test. sh 파일 은 일반적인 sh 스 크 립 트 처럼 실 행 될 수 있 습 니 다.
#!/usr/bin/env swift
import Foundation
var status :Int = 0
status = 10
print("Status = \(status)")
실행
./test.sh
, 출력 결 과 는 Status = 10
입 니 다.스 크 립 트 에 더 많은 swift 기능 을 추가 하여 스 크 립 트 의 기능 을 강화 할 수 있 습 니 다.
import
swift 의 다른 라 이브 러 리 를 도입 할 수도 있 습 니 다.#!/usr/bin/env swift
import Darwin
var status = arc4random_uniform(10)
print("Status = \(status)")
Swift 호출 셸
swift 호출 셸 명령 은 이렇게 간결 하지 않 습 니 다. swift 는 고급 언어 이기 때문에 셸 명령 을 호출 하려 면 대상 의 방식 으로 이 루어 져 야 합 니 다.
#!/usr/bin/env swift
import Foundation
class Execution{
class func execute(path:String,arguments:[String]? = nil) -> Int {
let task = Process();
task.launchPath = path
if arguments != nil {
task.arguments = arguments!
}
task.launch()
task.waitUntilExit()
return Int(task.terminationStatus)
}
}
var status :Int = 0
status = Execution.execute(path: "/bin/ls")
print("Status = \(status)")
//status = Execution.execute(path: "/bin/ls",arguments:["/"])
//print("Status = \(status)")
Process
대상 을 사용 하여 셸 명령 을 호출 할 수 있 습 니 다. 저 는 여기 서 약간의 포장 을 했 습 니 다.코드 좀 설명해 주세요.
Process
으로 초기 화 합 니 다. launchPath
프로 세 스 의 로드 경 로 를 설정 하고 arguments
프로 세 스에 전달 할 인 자 를 설정 할 수 있 습 니 다.launch
방법 으로 프로 세 스 를 시작 합 니 다. waitUntilExit
현재 swift 스 크 립 트 프로 세 스 를 막 고 우리 가 만 든 프로 세 스 의 작업 이 끝 날 때 까지 기 다 렸 다가 아래로 실행 합 니 다.swift ~/Desktop/test.swift
을 실 행 했 습 니 다. 출력 결 과 는 터미널 현재 디 렉 터 리 에 있 는 모든 파일 ls
명령 과 Status = 0
문자열 을 실 행 했 기 때 문 입 니 다. 그 중에서 0 은 실행 에 성 공 했 음 을 나타 냅 니 다.주의:
swift ~/Desktop/test.swift
예제 처럼 머리 에 해석 기 를 지정 하면 swift 명령 을 사용 하지 않 고: ~/Desktop/test.swift
를 사용 하여 실행 할 수 있 습 니 다.chmod +x ~/Desktop/test.swift
실행 권한 을 추가 합 니 다.이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.